我正在使用ReactGo样板来开发应用程序。 使用react-router在站点中导航,这就是代码,
import { Route, IndexRoute } from 'react-router';
<Route path="/" component={App}>
<IndexRoute component={HomePage} />
<Route path="/login" component={SignIn} pageType="checkout" />
</Route>
这是App组件,
class App extends Component {
render() {
const rounteProps = this.props.children.props.route;
const pageType = rounteProps.pageType;
return (<div className="app">
{pageType === 'checkout' ? (<CheckoutHeader />) : (<Header />)}
<div className="grid-wrapper site-page content--centered">
<main className="grid grid--space-y site-main">
{this.props.children}
</main>
<Footer />
<Loader />
</div>
</div>);
}
}
我正在使用 pageType 进行 标头组件 的条件呈现,因为我有2个不同的标头。这适用于没有任何pageType / common pageType的所有路由。
但是,当我转到 / em> / login pageType = checkout 的页面时。它重新加载整个页面(根据我的观察,它加载组件两次)。不知道为什么会这样?任何帮助,将不胜感激。如果您需要更多详细信息,请与我们联系。