Async IndexRoute不会与react-router一起加载

时间:2016-02-08 15:57:15

标签: javascript react-router

我无法加载我的索引路径(Home组件),我真的很感激我的错误提供了一些帮助吗?

我的routes.js文件看起来像这样

module.exports = <Route 
    path="/" 
    getComponent={(location, cb) => {
      require.ensure([], (require) => {
        cb(null, require('./Container'))
      })
    }}
    getChildRoutes={(location, cb) => {
      require.ensure([], (require) => {
        cb(null, require('./Container').childRoutes)
      })
    }}
    getIndexRoute={(location, cb) => {
      require.ensure([], (require) => {
        cb(null, require('./Container').indexRoute)
      })
    }}
/>

我的Container.js文件看起来像这样

export default class Container extends Component {
  render = () => {
    return <div>
      {this.props.children}
    </div>
  }
}

Container.childRoutes = [
  <Route 
    path="/:product/get-quote"
    component={props => <Product productName={props.params.product} {...props} />}
  />,
  <Route 
    path="/:product/processing-quote"
    component={props => <ProcessingQuote productName={props.params.product} {...props} />}
  />
]

Container.indexRoute = <IndexRoute component={Home} />

1 个答案:

答案 0 :(得分:1)

如果您正在使用getChildRoutesgetIndexRoute处理程序,则应使用PlainRoute配置对象,而不是JSX组件。