1. 程式人生 > >使用Angular CLI生成路由

使用Angular CLI生成路由

HR app OS lar pro 代碼 一個 import route

第一篇文章是: "使用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

使用Angular CLI生成路由