是否可以在React中将“功能”存储/传递到Redux存储?

时间:2020-09-02 06:29:23

标签: reactjs redux

我通过使用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});
}

1 个答案:

答案 0 :(得分:0)

您不应这样做。将不可序列化的数据置于Redux存储状态,您可以在Redux Best Practice Documentation中获取更多详细信息。

您可以这样做,但这会带来一些意想不到的行为