Когда я перехожу к /home
, у меня появляется навигационная панель, на которой отображается домашний значок, сведения о, настройки и т. д. Компонент, который отображает эту навигационную панель, находится внутри HomeContainer
. Основываясь на URL-адресе, я хочу загрузить маршруты HomeContainer
. Я использую wepback 2, разделение кода, реагирующий маршрутизатор 3.
Вот мой файл маршрутов
import React from 'react';
import { Router, hashHistory } from 'react-router';
import App from './components/App';
import Portal from './components/portal/Portal';
const componentRoutes = {
component: App,
path: '/',
indexRoute: { component: Portal },
childRoutes: [
{
path: 'login',
getComponent(location, cb) {
System.import('./components/login/Login')
.then(module => cb(null, module.default));
}
},
{
path: 'home',
getComponent(location, cb) {
System.import('./components/homepage/HomeContainer')
.then(module => cb(null, module.default));
},
getIndexRoute(partialNextState, callback) {
require.ensure([], function (require) {
callback(null, {
component: require('./components/homepage/Home'),
})
})
},
getChildRoutes(partialNextState, callback) {
require.ensure([], function (require) {
callback(null, [
require('./components/homepage/About').default
])
})
}
}
]
};
const Routes = () => {
return <Router history={hashHistory} routes={componentRoutes} />
};
export default Routes;
Проблема в том, как заставить компонент about
отображаться? Я хочу иметь возможность перейти к /home/about
и загрузить его как дочерний маршрут HomeContainer
.