Header.tsx 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. import { ReadOutlined } from '@ant-design/icons';
  2. import { Tooltip } from 'antd';
  3. import { useRouter } from 'next/router';
  4. import React, { useEffect, useState } from 'react';
  5. import { useTranslation } from 'react-i18next';
  6. const Header: React.FC = () => {
  7. const { t } = useTranslation();
  8. const router = useRouter();
  9. const [showHeader, setShowHeader] = useState(true);
  10. useEffect(() => {
  11. if (
  12. router.pathname === '/construct/flow/canvas' ||
  13. router.pathname === '/construct/app/extra' ||
  14. (router.pathname === '/chat' && router.asPath !== '/chat')
  15. ) {
  16. setShowHeader(false);
  17. } else {
  18. setShowHeader(true);
  19. }
  20. }, [router]);
  21. if (!showHeader) {
  22. return null;
  23. }
  24. return (
  25. <header className='flex items-center justify-end fixed top-0 right-0 h-14 pr-11 bg-transparent'>
  26. <a href='htt://docs.dbgpt.cn' target='_blank' className='flex items-center h-full mr-4' rel='noreferrer'>
  27. <Tooltip title={t('docs')}>
  28. <ReadOutlined />
  29. </Tooltip>
  30. </a>
  31. <Tooltip>
  32. <span className='text-sm'>帮助中心</span>
  33. </Tooltip>
  34. {/* <UserBar /> */}
  35. </header>
  36. );
  37. };
  38. export default Header;