所以来自 Angular/AngularJS 背景,你有状态,每个状态都是一个单独的页面。例如,在社交网络中,您可以拥有您的提要状态、您朋友列表的状态或查看个人资料的状态等。非常简单。在 React 中对我来说并没有那么多。
因此,假设我有一个包含 2 页的应用程序:产品列表和单个产品视图。在它们之间切换的最佳方法是什么?
最简单的解决方案是让一个对象,其具有Statename的和是一个布尔
constructor() {
super();
this.state = {
productList: true,
productView: false
}
}
然后在你的render()函数中有类似的东西
return() {
<div className="App">
// Or you could use an if statement
{ this.state.productList && <ProductList /> }
{ this.state.productView && <ProductView product={this.state.product} /> }
</div>
}
很简单吧?当然,对于 2 页的应用程序。
但是,如果您有一个包含10、20、100页的大型应用程序怎么办?渲染的return()部分将是一团糟,跟踪每个状态的状态将是疯狂的。
我相信应该有更好的方法来组织您的应用程序。我试着用谷歌搜索,但找不到任何有用的东西(除了使用if else或conditional operators)。