W3Cschool
恭喜您成為首批注冊用戶
獲得88經驗值獎勵
雖然“快速上手:“英雄指南”教程介紹了 Angular 中的一般概念,而本篇 “路由器教程”詳細介紹了 Angular 的路由能力。本教程將指導你在基本的路由器配置之上,創(chuàng)建子路由、讀取路由參數、惰性加載 NgModules、路由守衛(wèi),和預加載數據,以改善用戶體驗。
本章要講的是如何開發(fā)一個帶路由的多頁面應用。 接下來會重點講解了路由的關鍵特性,比如:
Heroes
鏈接到“英雄列表”組件)。id
傳進去)。CanActivate
守衛(wèi)(檢查路由的訪問權限)。CanActivateChild
守衛(wèi)(檢查子路由的訪問權限)。CanDeactivate
守衛(wèi)(詢問是否丟棄未保存的更改)。Resolve
守衛(wèi)(預先獲取路由數據)。CanLoad
守衛(wèi)(在加載特性模塊之前進行檢查)。就像你正逐步構建應用一樣,本指南設置了一系列里程碑。不過這里假設你已經熟悉了 Angular 的基本概念。有關 Angular 的一般性介紹,參見 快速上手。有關更深入的概述,請參閱“英雄指南”教程。
本教程的示例應用會幫助“英雄職業(yè)管理局”找到需要英雄來解決的危機。
本應用具有三個主要的特性區(qū):
該應用會渲染出一排導航按鈕和和一個英雄列表視圖。
選擇其中之一,該應用就會把你帶到此英雄的編輯頁面。
修改完名字,再點擊“后退”按鈕,應用又回到了英雄列表頁,其中顯示的英雄名已經變了。注意,對名字的修改會立即生效。
另外你也可以點擊瀏覽器本身的后退按鈕(而不是應用中的 “Back” 按鈕),這也同樣會回到英雄列表頁。 在 Angular 應用中導航也會和標準的 Web 導航一樣更新瀏覽器中的歷史。
現在,點擊危機中心鏈接,前往危機列表頁。
選擇其中之一,該應用就會把你帶到此危機的編輯頁面。 危機詳情是當前頁的子組件,就在列表的緊下方。
修改危機的名稱。 注意,危機列表中的相應名稱并沒有修改。
這和英雄詳情頁略有不同。英雄詳情會立即保存你所做的更改。 而危機詳情頁中,你的更改都是臨時的 —— 除非按“保存”按鈕保存它們,或者按“取消”按鈕放棄它們。 這兩個按鈕都會導航回危機中心,顯示危機列表。
單擊瀏覽器后退按鈕或 “Heroes” 鏈接,可以激活一個對話框。
你可以回答“確定”以放棄這些更改,或者回答“取消”來繼續(xù)編輯。
這種行為的幕后是路由器的 CanDeactivate
守衛(wèi)。 該守衛(wèi)讓你有機會進行清理工作或在離開當前視圖之前請求用戶的許可。
Admin
和 Login
按鈕用于演示路由器的其它能力,本章稍后的部分會講解它們。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯系方式:
更多建議: