Reactjs Const内的React Redux调度操作

Reactjs Const内的React Redux调度操作,reactjs,redux,react-redux,Reactjs,Redux,React Redux,下面的组件显示了Redux商店中的页面名 const content = ({ pageName }) => { return ( <div className="content"> {pageName} </div> ); } const mapDispatchToProps = { DataStatement, } const mapStateToProps = stat

下面的组件显示了Redux商店中的页面名

const content = ({ pageName }) => {
    return (
        <div className="content">
            {pageName}
        </div>
    );
}

  const mapDispatchToProps = {
    DataStatement,
  }

const mapStateToProps = state => ({ pageName : state.Page.Name })


export default connect(mapStateToProps, mapDispatchToProps) (content);
这个动作呢

export const DataStatement = (StatementData) => ({ type: "DATA_STATEMENT", StatementData: StatementData  });

所以我需要在Content.js中做的就是数据陈述;所以我清空了DataStatement中的值。我添加了数据陈述;在返回内部内容之前,它不起作用。如何在Redux store中重置DataStatement。

如果要在渲染前发送操作,可以执行以下操作

const content = ({ pageName, beforeRendering }) =>
{
    beforeRendering();
    return (...);
}
const mapDispatchToProps = dispatch => ({
    beforeRendering: dispatch(DataStatement()),
})

但要小心,因为如果您使用的数据来自受重置影响的状态,则可能会导致循环。

您的代码看起来很好。你在哪里调用这个.props.DataStatement?const content={pageName}=>{在content中的return Before return语句..我应该在别处调用它吗?老实说,我不知道在哪里调用它…我应该是这样的!在函数组件中使用hook useffect。请参见[。
const content = ({ pageName, beforeRendering }) =>
{
    beforeRendering();
    return (...);
}
const mapDispatchToProps = dispatch => ({
    beforeRendering: dispatch(DataStatement()),
})