Angular.js angular-ui-router的简单实践
标签: Angular angular-ui-router web前端
开始之前
一些说明
angular-ui-router的使用方法有很多,此文中,我们直接在控制器中使用,并完成一个简单的路由。
文中 Angular.js 的版本为 1.5.2
下载和安装
直接通过 bower
来安装 angular-ui-router
使用
bower
安装angular-ui-router
之前,首先需要安装npm
和bower
。npm
是node.js的包管理工具,下载安装node.js,即可完成npm
的安装-
通过
npm
安装bower
(如果未安装bower
):npm install -g bower
-
安装
angular-ui-router
bower install --save angular-ui-router
使用 angular-ui-router
首先要在 angular.module
方法中,注入 angular-ui-router
var app = angular.module('myApp',['ui.router']);
定义路由规则
app.config(function($stateProvider,$urlRouterProvider){ /** * $stateProvider 提供的 state 方法包含两个参数 * @param 路由名称 String * @param 路由规则 Object * 此方法用来定义路由名称和规则 */ $stateProvider.state('user',{ url : "/user/:uid",controller : 'MyCtrl' }); // 将未定义的路由重定向 $urlRouterProvider.otherwise("/"); });
在控制器中使用
app.controller("MyCtrl",function($scope,$state){ // 监听路由变化 $scope.$on('$stateChangeSuccess',function(){ var route_name = $state.current.name; // 获取当前路由名称 if(route_name === 'user'){ var uid = $state.params.uid // 获取路由参数 console.log(uid); } }); // 主动路由跳转:路由名称,路由参数 $state.go('user',{'uid' : 88} ); });
其他
-
在
html
中,用<a>
标签指定路由的写法为:<a href="#/user/88">Tom</a>
-
angular.js的路由,在浏览器URL地址栏以这样的形式展现:
www.example.com/my/page#/user/88
原文链接:https://www.f2er.com/angularjs/149762.html日期:2016-3