私は常時表示したい家のコンポーネントがあります。ドロップダウンメニューです。メニューのアイテムがクリックされると、フォームが下にポップアップします。私は常にドロップダウンを表示したい。Angular2:子供のルート
私-app.html
<div>
<dropdown-selector></dropdown-selector>
<router-outlet></router-outlet>
</div>
ルーティングがうまく働いたが、私は私が私のindex.htmlで定義されたbase
タグを持っているにもかかわらずError: Cannot match any routes: ''(…)
を取得保管:もともと私はこのようにそれを設計しました。
次に、ドロップダウンを親ルートとして定義し、すべてのドロップダウンアイテムルートをその子にする必要があると考えました。
アプリ-routes.ts抜粋
export const APPLICATION_ROUTES: RouterConfig = [
{
path: '',
component: Home, // dropdown-selector is inside this component
children: [
{path: 'forms/1', component: Form1},
{path: 'forms/2', component: Form2},
{path: 'forms/3', component: Form3},
{path: 'forms/4', component: Form4},
{path: 'forms/5', component: Form5},
{path: 'forms/6', component: Form6},
{path: 'forms/7', component: Form7},
{path: 'forms/8', component: Form8}
]
}
];
そして、私の-app.htmlを再定義...
私-app.html私は保つ
<div>
<router-outlet></router-outlet>
</div>
とにかく同じエラーが発生しましたが、今ではドロップダウンも表示されません。また、新しいルータでは、デフォルトルートを設定する方法はないと私は考えています。私は、''
がデフォルトルートであると仮定していました。私はAngular2 RC.4を使用しています。
私はこれを間違った方法で設計していますか?そのエラーはどうなっていますか?私はそれを扱っている多くのSOの投稿を見ましたが、誰も私の問題を解決しませんでした。私は私のヘッダとフッタはすべての時間を表示させたい
、とのコンポーネントをナビゲート:
これはうまくいきましたが、私は '' 'ゴースト ''コンポーネントに行くためのパスを設定したいと思います。私はそこに何かを表示したくない。私はそのアイデアの音が好きではありません。 – DankestMemes
私自身の解決策では、実際には認証を管理するメインのがあります。次に、残りのアプリケーションを管理する2番目の(上に貼り付けたもの)があります。 この場合、2番目のアウトレットを最初のアウトレットの子として定義する必要があります。あなたがそれを行うのを助けるためにルータでAngular2のドキュメントを参照する必要があります。 これが受け入れられる回答であれば、それを記入してください、本当に感謝します。さらなる助けが必要な場合は、別の質問をすることをためらってください。 –