It depends on your version of the web package, but you are on the right track with code / routing separation.
For webpack v2, I would recommend checking out the Webpack documentation .
webpack 2 /, , . , agent- , . "/home" "/about", :
<Route path="/home" getComponent={(nextState, callback) => {
require.ensure([], require => {
callback(null, require("./containers/home"));
}, "Home");
}} />
<Route path="/about" getComponent={(nextState, callback) => {
require.ensure([], require => {
callback(null, require("./containers/about"));
}, "About");
}} />