我有一个反应应用程序,就像我Headers
包含我的Footers
和state
..
在那里我将localstorage['key']
存储到本地存储..存储后我可以检索它..
但是我在加载它时遇到问题..在我的浏览器中{I} Root.js
它给了我数据,但我无法加载。
我应该先把它装到哪里?
我有class Root extends Component {
render() {
const { store } = this.props
return (
<Provider store={store}>
<ReduxRouter />
</Provider>
)
}
}
Root.propTypes = {
store: PropTypes.object.isRequired
}
export default Root
:
index.js
外层的和const store = configureStore()
render(
<Root store={store} />,
document.getElementById('root')
)
:
localStorage
我应该在哪里加载localStorage
?
需要帮助。我需要知道响应中的第一个响应,以便我可以调用加载{{1}}那里..如果这不是坏主意
答案 0 :(得分:1)
您正在使用redux,因此您应该将数据作为操作的结果来读取。
实现这项工作的最简单方法是:
ReduxRouter
下,应该有一个连接的组件。请参阅docs componentDidMount
以调用操作getStuffFromLocalstorage
。请参阅React lifecycle events 在你的reducer中做它可能是一个反模式,但它至少会使redux-flow流动。
答案 1 :(得分:0)
我建议从app.js文件中的componentDidMount
方法获取本地存储数据。
请在此处找到官方参考: https://facebook.github.io/react/docs/component-specs.html#mounting-componentdidmount
如果要在卸载组件之前更新localStorage数据,可以使用方法componentWillUnmount
:
https://facebook.github.io/react/docs/component-specs.html#unmounting-componentwillunmount