【发布时间】:2021-01-06 20:36:44
【问题描述】:
我有一个反应页面,上面有几个组件,其状态显示模式。我不希望应用程序中的所有组件在模态显示时重新呈现。
const CustomersPage = () => {
const [showModal, setShowModal] = useState(false);
const dataSource = [...omitted data]
return (
<>
<Modal
visible={showModal} />
<div>
<div>
<div>
<Button type="primary" onClick={() => setShowModal(true)}>
Create
</Button>
</div>
<CustomForm />
</div>
<CustomList dataSource={dataSource} />
</div>
</>
);
};
当 showModal 值发生变化时,组件 CustomForm 组件和 CustomList 组件会重新呈现,但我不希望它们在每次模态显示时都重新呈现,因为列表可以有超过 100 个组件。我该怎么做?
编辑。
const CustomList = ({ dataSource }) => {
return (
<div>
{dataSource?.map(i => (
<CustomCard
id={i.id}
...other props
/>
))}
</div>
);
};
const CustomCard = ({
... props
}) => {
return (
<>
<Card
...omitted properties
</Card>
</>
);
};
【问题讨论】:
标签: javascript reactjs