私は角型CLIを使用してモジュールを作成しましたが、作成中にルーティングを追加するのを忘れてしまいました。今はルーティングモジュールを追加したいと思います。角度CLIバージョン1.1.1の既存モジュールにルーティングモジュールを追加する方法はありますか。
ng init --routing
は全く問題ではない角度CLIバージョン1.1.1
私は角型CLIを使用してモジュールを作成しましたが、作成中にルーティングを追加するのを忘れてしまいました。今はルーティングモジュールを追加したいと思います。角度CLIバージョン1.1.1の既存モジュールにルーティングモジュールを追加する方法はありますか。
ng init --routing
は全く問題ではない角度CLIバージョン1.1.1
に役立つことはありません。
ルーティングを手動で追加するだけです。
すべて--routing
フラグがないこと、app.component.html
に<router-outlet></router-outlet>
を加えることに加えて、AppRoutingModule
と呼ばれる別のモジュールにおいて、Q RouterModule.forRoot()
呼び出しを追加し、そしてAppModule
のimports
にそのモジュールを含んでなります。
したがって、app.module.ts
には、AppModule
のimports
にAppRoutingModule
が追加されます。
AppRoutingModule
はapp-routing.module.ts
と定義され、from this templateとなります。
それは私がそれをここにコピーするだろうと非常に小さいです:
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
const routes: Routes = [
{
path: '',
children: []
}
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
{path: '', children:[]}
は、あなたが(私はソースコードにこれを追加しましたので、私は知っている)を交換することが期待されるだけのプレースホルダです。あなたがルートを持っていないときに、ルータが<router-outlet>
について文句を言うことはありません。
質問に戻るどうすればよいですか?はちょうど元CLIのように見えるように、あなたのプロジェクトにファイルをコピーし、あなたのAppModule
のimports
...あなたのAppModule
へ
それとも追加RouterModule.forRoot([/* routes here */])
のimports
代わりにAppRoutingModule
を追加してください。これはまだ動作しますが、遅延ロードのための組み込みサポートと他のすべてがうまく動作します。
P.S.
--routing
フラグをng new
で使用したかどうかに関係なく、子ルートを追加するには、いつでもルーティングng generate module Foo --routing
でさらにモジュールを生成できます。心配する設定や魔法はありません。
子ルートを生成する特定のフラグはありますか?新しいモジュールの作成中に '--routing'フラグを使うと自動的に子ルートを作成しますか? –
さて、あなた自身でコードを追加してください。または、ルーティングで別のモジュールを生成し、生成されたコードをコピーして貼り付けます。 –
新しいバージョンのangi cliはng initをサポートしていません – NuttLoose