日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

angularjsl路由_AngularJs ng-route路由详解

發布時間:2023/12/4 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 angularjsl路由_AngularJs ng-route路由详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本篇基于ng-route來講下angular中的路由,路由功能主要是 $routeProvider服務 與 ng-view 實現。

ng-view的實現原理,是根據路由的切換,動態編譯html模板——$compile(html)(scope)。

前提

首先需要在頁面引入angular和angular-route,注意要在angular-route之前引入angular

這主要是因為angular-route.js需要傳入window.angular這個參數,而這個參數只有在加載完angular才會出現。

(function(window, angular, undefined) {'use strict';

...

ngRouteModule.directive('ngView', ngViewFactory);

...

})(window, window.angular);

下載可以去官網下載,或者使用bower進行安裝。

講解

路由功能是由 routeProvider服務 和 ng-view 搭配實現,ng-view相當于提供了頁面模板的掛載點,當切換URL進行跳轉時,不同的頁面模板會放在ng-view所在的位置; 然后通過 routeProvider 配置路由的映射。

一般主要通過兩個方法:

when():配置路徑和參數;

otherwise:配置其他的路徑跳轉,可以想成default。

when的第二個參數:

controller:對應路徑的控制器函數,或者名稱

controllerAs:給控制器起個別名

template:對應路徑的頁面模板,會出現在ng-view處,比如"

xxxx"

templateUrl:對應模板的路徑,比如"src/xxx.html"

resolve:這個參數著重說下,該屬性會以鍵值對對象的形式,給路由相關的控制器綁定服務或者值。然后把執行的結果值或者對應的服務引用,注入到控制器中。如果resolve中是一個promise對象,那么會等它執行成功后,才注入到控制器中,此時控制器會等待resolve中的執行結果。

詳細的例子,可以參考下面的樣例。

redirectTo:重定向地址

reloadOnSearch:設置是否在只有地址改變時,才加載對應的模板;search和params改變都不會加載模板

caseInsensitiveMatch:路徑區分大小寫

路由有幾個常用的事件:

$routeChangeStart:這個事件會在路由跳轉前觸發

$routeChangeSuccess:這個事件在路由跳轉成功后觸發

$routeChangeError:這個事件在路由跳轉失敗后觸發

使用

在頁面中,寫入URL跳轉的按鈕鏈接 以及 ng-view標簽

  • click a
  • click b

總結

以上是生活随笔為你收集整理的angularjsl路由_AngularJs ng-route路由详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。