反应如何申请`componentDidMount()

时间:2017-04-30 07:13:54

标签: javascript reactjs redux

我正在使用redux和reactjs。我需要在componentDidMount()中向以下根反应组件中添加一些函数。

我没有使用react类扩展。如何在那里应用componentDidMount()和我的逻辑?

   const App = () => (
      <div>
        <NavigationContainer />
      </div>
    )

export default App

3 个答案:

答案 0 :(得分:1)

您可以在返回调用中包装JSX,之前只需执行逻辑操作,甚至可以与redux存储进行交互。

const App = () => {
  const willRunOnEachRender = 'runs on each render'
  return (<div>
    <NavigationContainer willRunOnEachRender={willRunOnEachRender} />
  </div>
 )
}
export default App

答案 1 :(得分:0)

        import Dispatcher from "./Dispatcher.jsx";
   class TodoStore extends EventEmitter
{
      getInitialState: function() {
        return { };
      },

      componentWillMount: function() {

      },
changeevent()
{
.. your logic
this.emit("change");
}

      componentDidMount: function() {


    ..your logic 
      },
      handleActions(action)
                {
    if(action='your action')
{
changevent()
}
                }
      )

      window.Dispatcher=Dispatcher;
            Dispatcher.register(todoStore.handleActions.bind(todoStore));

 after the change event is fired in changevent you can catch that event wherever you want

答案 2 :(得分:0)

在这种情况下,您需要使用有状态组件或将其包装在有状态容器中,无状态组件不支持React中的生命周期。

所以我建议您从react导入组件并执行类似下面的代码:

'