angular路由 路由(route),幾乎是所有的mvc(vm)框架所應該的特性,是前端構建單頁面應用必不可少的組成部分,那么,對于 angular 而言,它自然也有 內置 的路由模塊:叫做 ngRoute 。不過,大家很少用它,因為它的功能太有限,往往不能滿足開發需求!!于是,一個基于 ngRoute 開發的 第三方路由模塊 ,叫做 ui.router ,受到了大家的“追捧”。 ngRoute vs ui.router 無論是那種路由,作為框架的額外功能,首先,無論是使用哪種路由,作為框架額外的附加功能,它們都將以 模塊依賴 的形式被引入,簡而言之就是:在引入路由 源文件 之后,你的代碼應該這樣寫(以 ui.router 為例): angular.module(“myApp”, [“ui.router”]); // myApp為自定義模塊,依賴第三方路由模塊ui.router 這樣做的目的是: 在程序啟動(bootstrap)的時候,加載依賴模塊(如:ui.router),將所有 掛載 在該模塊的 服務(PRovider) , 指令(directive) , 過濾器(filter) 等都進行注冊 ,那么在后面的程序中便可以調用了。
關于uirouter 一:template/templateUrl 1.template:字符串方式的模版內容,或則是返回一個html函數 2.templateUrl:模版路徑或則是返回模版路徑的函數 3templateProvider:返回html內容的函數 二:controller 控制器, 返回對應的url模版的控制器名稱,或者是對應的url模版得控制器函數,如果沒有對應的模版定義,控制器對象不會被創建 三:resove:使用resove功能,我們可以準備一組用來注入到控制器的依賴對象,在resove可以在實際渲染之前解決掉promise, resove選項提供一個對象,對象得key就是準備注入到controller中的依賴名稱,值則是創建這個對象的工廠。 接下來我們來創建一個案例: 首先:我們需要在案例中放入 第二步:在html中的展示: 在主頁面的展示:
在水果頁面的展示:
對應的js的路由配置:
對應生成的效果:
對應水果頁面的效果:
新聞熱點
疑難解答