设定

使用Redux的React应用处理状态和动作。
大量服务-用户登录API,谷歌地图和一些第三方服务。

问题

当初始化是组件(componentDidMount)的一部分时,初始化会运行多次,在此过程中加载SDK脚本(我希望在应用中需要它们时可以准备好它们)。

首要问题


运行appInitialize()函数的位置和时间,因此它将仅运行一次(仅在应用程序启动时)。
在哪里加载Google API脚本? (在使用它的组件中还是在App组件中?)
最佳做法,书籍和其他指南参考也可能会有所帮助。

最佳答案

之前,我有一个类似的问题,基本上,我想引导自己的应用程序。在index.js内部,假设您的目标是渲染应用程序,则在此之前您可以做很多事情。

ReactDOM.render(Root, document.getElementById('root'));

例如


创建一个redux存储,并将其注入到此应用中(同步)
调用一个promise,然后在调用render(异步)之前解决它


这是一个javascript文件,您可以做任何您想做的事情,大多数时候您都可以将其视为洗衣清单。当您获得越来越多的东西时,您可能会想到一种更具模块化的方式(例如,react或redux只是模块之一)。

只是为了回答你的问题


在何处以及何时运行appInitialize()函数,使其仅运行一次(仅在应用程序启动时)?在index.js中,确保仅调用一次render。并确保您希望在此之前初始化所有其他事情。
在哪里加载Google API脚本? (在使用它的组件中还是在App组件中?)。所有第三方都可以位于index.htmlindex.js中,您只需拨打一次即可,然后将其留在此处。

关于javascript - 在哪里最好用Redux应用初始化React?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53815902/

10-09 08:56
查看更多