2016-08-02 11 views
9

私はhttp://moduscreate.com/code-splitting-for-react-router-with-es6-imports/の記事を基にしたアプリを持っています。私はいくつかの子供たちのルートを追加しましたし、今、私のルータの設定は、次のような次のとおりです。Webpack 2 + React - System.importでコードを分割するときのネストされたルート

function errorLoading(err) { 
    console.error('Dynamic page loading failed', err); 
} 

function loadRoute(cb) { 
    console.log('load route called'); 
    return (module) => cb(null, module.default); 
} 

const obj = { 
    component: App, 
    childRoutes: [ 
    { 
     path: '/', 
     getComponent(location, cb) { 
     System.import('pages/Home') 
      .then(loadRoute(cb)) 
      .catch(errorLoading); 
     } 
    }, 
    { 
     path: '/gsgs', 
     getComponent(location, cb) { 
     System.import('pages/Gsgs') 
      .then(loadRoute(cb)) 
      .catch(errorLoading); 
     }, 
     childRoutes: [ 
     { 
      path: 'go', 
      getComponent(location, cb) { 
      System.import('pages/Gsgs/Home.js') 
       .then(loadRoute(cb)) 
       .catch(errorLoading); 
      }, 
     } 
     ] 
    }, 
    { 
     path: '/about', 
     getComponent(location, cb) { 
     System.import('pages/About') 
      .then(loadRoute(cb)) 
      .catch(errorLoading); 
     } 
    }, 
    ] 
}; 

/インデックスは、/程度および/ GSGSルートがうまく動的なコードのロードをトリガします。しかし、/ gsgs/goで404が表示されます

bundle.js:2 Dynamic page loading failed Error: Loading chunk 0 failed.(…)

私は間違っていますか?使用しています

"webpack": "^2.1.0-beta.4", 
"webpack-dev-server": "^2.0.0-beta" 
+0

なぜエラーが出るのか分かりませんが、JSX要素を使用して、扱いにくいオブジェクトの代わりにルートを設定することができます。 –

+0

私はルータのjsx要素を知っています。私はオブジェクト表記法がより洗練されており、読みやすくなっています。 – nuway

答えて

2

私はブログの投稿に問題を再現しようとしましたが、何かが間違っているようです。私はそれを修正しようとしており、私はもうエラーを見ることができません。

このcommitを参照すると、現在のマスターとの変更があり、子ルートを動的に読み込むことができます。

問題が再発するかどうか教えてください。問題を再現できるサンプルレポを持つことができれば嬉しいです。デバッグがうれしいです。

ハッピー・トゥ・ヘルプ

+0

これはこれを解決するようです。何が問題だと思いますか? – nuway

+0

したがって、既存のコードとの問題のカップルがありました。 1)webpack2で依存関係が更新されていません 2)HTML絶対パス。 それらを解決して子ルートを追加した後、正常に動作しているようです。あなたがこの答えを受け入れることができれば、あなたの問題は解決するでしょう。おかげさまで – Mihir

+0

私はpublicPathを '/'に指定しなかったので、失敗していることが判明しました。残りは良いと思う。ありがとうMihir – nuway

関連する問題