Reactjs 无法配置反应路由
你能帮帮我吗,我有下一条路线Reactjs 无法配置反应路由,reactjs,routes,Reactjs,Routes,你能帮帮我吗,我有下一条路线 export const routes = ( <div> <Route path='/' component={App}> <IndexRoute component={Home} /> <Route path='home' component={Home} /> <Route path='categories' component={Category} />
export const routes = (
<div>
<Route path='/' component={App}>
<IndexRoute component={Home} />
<Route path='home' component={Home} />
<Route path='categories' component={Category} />
<Route path='books' component={Book}>
<Route path='/categories/:category_id/books' component={Book} />
</Route>
</Route>
<Route path='*' component={NotFound} />
</div>
)
我认为这里没有调用DidMount函数,因为您从未脱离“books”上下文。也许您可以使用componentWillReceiveProps事件而不是componentDidMount(注意第一次加载不会触发willreceiveprops),因为两个路由使用相同的组件,您应该有一个触发机制来重新呈现组件。要做到这一点,您可以利用状态。您可以将列表定义为组件的状态,所以当您应用或删除过滤器时,该状态将被更新,从而触发组件重新呈现。
class Book
componentDidMount() {
const { category_id } = this.props.params;
category_id ? this.props.loadBooksByCategory(category_id) : this.props.loadBooks();
}