web-dev-qa-db-ja.com

エラー:どのルートにも一致しません。 URLセグメント: ''

Angular2ルーターで問題を再現しようとしていますが、Plunkerでプロジェクトの作業用コピーを作成できません。

これが私の試みです: https://plnkr.co/edit/1lpoYP4qlBZLuqZHW7Ft

index.htmlファイルで次のコード行を使用して、Plunkerの実行環境と''デフォルトパスで機能するルートパスを作成しました。

<script>document.write('<base href="' + document.location + '" />');</script>

なぜ私はまだこのエラーが出るのですか?

5
smartmouse
  1. あなたのplnkrに小さなタイプミスがあります:

    loadChildren: 'app /fist-section.module#FirstSectionModule'}

    first;)かもしれません

  2. さらに別の問題があります。子供たちでさえ、空の''- pathが必要です。だから書く代わりに

children: [ { path: 'first-section', loadChildren: 'app/first-section.module#FirstSectionModule' } ]空のパスを追加して、次のようにfirst-section- pathにリダイレクトする必要があります。

children: [
    { path: '', redirectTo: 'first-section'},
    { path: 'first-section', loadChildren: 'app/fist-section.module#FirstSectionModule' }
]

修正されたplnkrは次のとおりです。

https://plnkr.co/edit/9fMwx0?p=preview


更新Angular 2.4.1:

angular(2.4.1)の最新バージョンでは、子ルートに空のパスを使用する必要はもうないことに気付きました。

プランカーを最新のangular 2.4.1バージョン: [〜#〜] plunker [〜#〜] で更新しました。サンプルは空のパスなしで実行されています今。

10
Philipp Kief