list.tsx 716 B

12345678910111213141516171819202122232425262728293031
  1. import { SceneType } from "constant"
  2. import { Table } from 'antd'
  3. import { getTypeColumns } from './table-cloumns'
  4. import style from './style.module.scss'
  5. import { useEffect } from "react"
  6. import {
  7. useDispatch,
  8. useSelector,
  9. fetchScenes,
  10. scenesSelector
  11. } from 'store'
  12. export type SceneListProps = {type: SceneType}
  13. export const SceneList = ({ type }: SceneListProps) => {
  14. const dispatch = useDispatch()
  15. const scenes = useSelector(scenesSelector)
  16. useEffect(() => {
  17. dispatch(fetchScenes(type))
  18. }, [dispatch, type])
  19. return (
  20. <div className={style['table-body']}>
  21. <Table columns={getTypeColumns(type)} dataSource={scenes} rowKey="title" />
  22. </div>
  23. )
  24. }
  25. export default SceneList