我试图用reactjs处理历史记录,这样浏览器的后退和前进按钮就能直观地工作.有没有这方面的例子,或者我应该遵循的一般准则?
谢谢!
与没有React.js处理历史记录的方式没有多大区别.对我来说效果很好的是:我有一个顶级组件来保存应用程序的状态this.state
.我正在使用Backbone的路由器,所以当我从路由器获取事件(URL以某种方式加载或更改)时,我调用setState
更新顶级组件的状态.当我自己更新状态时,我确保也调用路由器的导航方法来更新URL.似乎工作得很好:您可以在https://github.com/mjm/eats上看到我的小应用程序中的示例.
React的另一个选择是使用React路由器组件.它为您处理pushState,您可以根据需要动态更改可用路由.它使用与React相同的方法,因为它本身就是一个反应类.请查看:
https://www.npmjs.org/package/react-router-component