我通过使用react hook引用下面的链接来制作模态。
How can I display a modal dialog in Redux that performs asynchronous actions?
模态的状态由Redux管理。 模态关闭时,我想运行一些“功能”。但是,此“功能”应仅在特定组件上起作用,因此当我在特定组件中打开模态时,我想将此“功能”传递给模态。但是我不确定是否可以将“函数”传递并存储到Redux。 我进行了很多搜索,但仍然不确定。
如果有人让我知道这是否正确,我将不胜感激。 感谢您的阅读。
SpecificComponent.jsx
const saySomthing = () => {
console.log("Now modal is close.");
}
const openModal = () => {
dispatch({
type: SHOW_MODAL,
modalProps: {
handleClose: saySomthing
})
}
Modal.jsx
const dispatch = useDispatch();
const modalProps = useSelctor((state) => state.modal.modalProps);
const handleClose = () => {
modalProps.handleClose();
dispatch({type: HIDE_MODAL});
}
答案 0 :(得分:0)
您不应这样做。将不可序列化的数据置于Redux存储状态,您可以在Redux Best Practice Documentation中获取更多详细信息。
您可以这样做,但这会带来一些意想不到的行为