使用Angular CLI生成路由

solenovex發表於2018-03-20

第一篇文章是: "使用angular cli生成angular5專案" : http://www.cnblogs.com/cgzl/p/8594571.html

第二篇文章是: "使用angular cli從藍本生成程式碼" : http://www.cnblogs.com/cgzl/p/8605464.html

 

我們知道使用 ng g module admin 將會生成admin module.

而使用 ng g m sales --routing 則將會生成sales和 sales-routing 兩個module.

sales-routing裡面就是路由的資訊, 並且它被import到了sales module 裡面.

為應用生成路由.

先建立一個專案:

ng new my-routing --routing

 

可以看到生成了兩個module.

看一下routing module:

再看一下app module:

已經把AppRoutingModule import了進來.

再看一下app.component.html:

router-outlet已經寫上了. 很好.

下面再生成兩個components:

ng g c dashboard
ng g c order

 

然後在app-routing.module裡面設定路由:

再修改一下html:

執行一下應用: ng serve -o

嗯. 沒問題.

 

 針對一個應用裡面有多個module的情況.

再生成一個module, 並且帶著路由module (可以先使用-d引數檢視將要生成的檔案):

ng g m admin --routing

 

在admin module裡面, 再建立一個admin component:

ng g c admin
ng g c admin/email -m admin
ng g c admin/user -m admin

 

實際上後兩個命令的-m引數可以去掉, 因為已經指定了路徑 admin/, 這樣預設就會在 admin module裡面進行宣告而不是app module.

隨後需要修改app.module:

把admin module加入進去.

然後修改admin.component.html, 加入router-outlet:

然後修改admin-routing.module.ts:

執行: ng serve -o

直接輸入地址: http://localhost:4200/admin

可以看到:

而輸入網址: http://localhost:4200/admin/email

則會看到:

所以沒問題.

 

生成Gurad.

ng g guard xxx

 

這個命令將會生成xxx.guard.ts

 

相關文章