angularjs中,為什麼要使用resolve?
ng-route模組中的when()和ui-route的state()都提供了resolve屬性。
為什麼需要使用resolve?
當路由切換的時候,被路由的頁面中的元素(標籤)就會立馬顯示出來,同時,資料會被準備好並呈現出來。但是注意,資料和元素並不是同步的,在沒有任何設定的情況下,AngularJS預設先呈現出元素,而後再呈現出資料。這樣就會導致頁面會被渲染兩遍,導致“頁面UI抖動”的問題,對使用者不太友好。resolve的出現解決了這個問題。resolve是幹嘛用的
resolve屬性裡的值會在路由成功前被預先設定好,然後注入到控制器中。通俗地將,就是等資料都“就位”後,才進行路由(其實我覺得也不能叫路由,因為路由是一些列的操作,其中就包括了設定resolve屬性等等)。這樣的好處就是頁面僅會被渲染一遍。相關文章
- 為什麼要虛擬化,為什麼要容器,為什麼要Docker,為什麼要K8S?DockerK8S
- 為什麼說Java中要慎重使用繼承Java繼承
- AngularJS 為什麼如此火呢?AngularJS
- 為什麼要removeREM
- 為什麼要敏捷?敏捷
- 為什麼if中null要寫在前面?Null
- React元件方法中為什麼要繫結thisReact元件
- 為什麼AngularJS發展前途巨大?AngularJS
- 為什麼要code reviewView
- 為什麼要謹慎使用Linux find命令?Linux
- 為什麼要學習和使用C語言?C語言
- GC 為什麼要掛起使用者執行緒? 什麼愁什麼怨?GC執行緒
- 為什麼要學習 RustRust
- 為什麼要學習 Julia
- 為什麼要指令重排序?排序
- 為什麼要學習 Vim?
- 為什麼要選擇SQL?SQL
- MySQL為什麼要set namesMySql
- 設計師為什麼要學程式設計,開發者為什麼要學設計?程式設計
- 為什麼 JavaScript 的 this 要這麼用?JavaScript
- Python是什麼?為什麼要掌握python?Python
- 聊聊分割槽Partition——我們為什麼要分割槽(中)
- 為什麼還要記密碼密碼
- 為什麼要閱讀原始碼原始碼
- 為什麼要學習Netty?Netty
- 為什麼要貢獻開源
- 前端為什麼要工程化?前端
- 為什麼要分庫分表?
- 為什麼要特徵標準化特徵
- 為什麼我要學習“機器學習”?機器學習
- 為什麼要網頁模組化?網頁
- 我為什麼要學技術
- 為什麼要避免在 Go 中使用 ioutil.ReadAll?Go
- Python優勢是什麼?為什麼要學習?Python
- 1、AngularJS是什麼?AngularJS
- 為什麼要學習python中的高階知識Python
- 為什麼要成為「無敵」程式設計師?程式設計師
- 為什麼想成為 Geeker 的人要學習 JSJS