BoardPage.tsx 787 B

12345678910111213141516171819202122232425
  1. import { useParams } from 'react-router-dom';
  2. import { useEffect, useState } from 'react';
  3. import { Board } from '../components/board/Board';
  4. import { useAppSelector } from '$app/stores/store';
  5. export const BoardPage = () => {
  6. const params = useParams();
  7. const [viewId, setViewId] = useState('');
  8. const pagesStore = useAppSelector((state) => state.pages);
  9. const page = useAppSelector((state) => (params.id ? state.pages.map[params.id] : undefined));
  10. const [title, setTitle] = useState('');
  11. useEffect(() => {
  12. if (page) {
  13. setViewId(page.id);
  14. setTitle(page.name);
  15. }
  16. }, [params, pagesStore, page]);
  17. return (
  18. <div className='flex h-full flex-col gap-8 px-8 pt-8'>
  19. {viewId?.length && <Board viewId={viewId} title={title} />}
  20. </div>
  21. );
  22. };