#学习笔记#(56)angular ui-router使用姿势
来源:互联网 发布:centos ntp 时间同步 编辑:程序博客网 时间:2024/05/01 21:16
一、单个ui-view
<!DOCTYPE html><html ng-app="myApp"> <head> <meta charset="UTF-8"> <title></title> <script src="js/jquery/jquery-2.1.1.min.js"></script> <script src="js/angular/angular.min.js"></script> <script src="js/ui-router/angular-ui-router.min.js"></script></head><body><div ui-view></div><script> var myApp = angular.module('myApp', ['ui.router']); myApp.config(function($stateProvider) { $stateProvider.state('test', { url: "", template: "<h1>这是一个路由</h1>" });});</script></body></html>
1 引入angular-ui-router.js
<script src="js/ui-router/angular-ui-router.min.js"></script>
2 注入模块
var myApp = angular.module('myApp', ['ui.router']);
3 配置路由
myApp.config(function($stateProvider) {
$stateProvider.state('test', {
url: "",
template: "<h1>这是一个路由</h1>"
$stateProvider.state('test', {
url: "",
template: "<h1>这是一个路由</h1>"
});
注意:1 必须写url: "",可为空,但必须写,不然就看不到视图内容
2 加上“/”可以通过ui-sref="test"访问到,不加表示初始默认显示,但不能通过ui-sref访问
3 .state('test', {});.state的第一个参数必须写,不写会报错(一般写index),当通过ui-sref访问时,这个参数会显示在浏览器url地址栏里
二、多个ui-view
<!DOCTYPE html><html ng-app="myApp"> <head> <meta charset="UTF-8"> <title></title> <script src="js/jquery/jquery-2.1.1.min.js"></script> <script src="js/angular/angular.min.js"></script> <script src="js/ui-router/angular-ui-router.min.js"></script></head><body><div ui-view="viewA"></div><div ui-view="viewB"></div><!-- Also a way to navigate --><a ui-sref="route1">路由1</a><a ui-sref="route2">路由2</a><script> var myApp = angular.module('myApp', ['ui.router']); myApp.config(function($stateProvider) { $stateProvider .state('test', { url: "", views: { "viewA": { template: "<h1>这是视图A</h1>" }, "viewB": { template: "<h1>这是视图B</h1>" } } }) .state('route1', { url: "/route1", views: { "viewA": { template: "<h1>路由1.视图A</h1>" }, "viewB": { template: "<h1>路由1.视图B</h1>" } } }) .state('route2', { url: "/route2", views: { "viewA": { template: "<h1>路由2.视图A</h1>" }, "viewB": { template: "<h1>路由2.视图B</h1>" } } }) });</script></body></html>
显示结果:
三、通过templateUrl属性配置视图
<!DOCTYPE html><html ng-app="myApp"><head> <meta charset="UTF-8"> <title></title> <script src="js/jquery/jquery-2.1.1.min.js"></script> <script src="js/angular/angular.min.js"></script> <script src="js/ui-router/angular-ui-router.min.js"></script></head><body><div ui-view></div><script> var myApp = angular.module('myApp', ['ui.router']); myApp.config(function ($stateProvider) { $stateProvider .state('test', { url: "", templateUrl:'test2.html' }); });</script></body></html>
显示结果:
这句话是写在test2.html里的。
四、通过controller属性配置控制器
这个比较简单,有两种方式,
1 直接把控制器方法写在路由里:
<!DOCTYPE html><html ng-app="myApp"><head> <meta charset="UTF-8"> <title></title> <script src="js/jquery/jquery-2.1.1.min.js"></script> <script src="js/angular/angular.min.js"></script> <script src="js/ui-router/angular-ui-router.min.js"></script></head><body><div ui-view></div><script> var myApp = angular.module('myApp', ['ui.router']); myApp.config(function($stateProvider) { $stateProvider.state('test', { url: "", template: "<h1>{{title}}</h1>", controller:function($scope){ $scope.title='测试控制器'; console.log('如果显示[测试控制器]表示controller配置成功'); } }); });</script></body></html>
2 controller通过函数名指向一个函数
<!DOCTYPE html><html ng-app="myApp"><head> <meta charset="UTF-8"> <title></title> <script src="js/jquery/jquery-2.1.1.min.js"></script> <script src="js/angular/angular.min.js"></script> <script src="js/ui-router/angular-ui-router.min.js"></script></head><body><div ui-view></div><script> var myApp = angular.module('myApp', ['ui.router']); myApp.config(function($stateProvider) { $stateProvider.state('test', { url: "", template: "<h1>{{title}}</h1>", controller:'myCtrl' }); }); myApp.controller('myCtrl',myCtrl); function myCtrl($scope){ $scope.title='测试控制器'; console.log('如果显示[测试控制器]表示controller配置成功'); }</script></body></html>
注意事项:myApp.controller('myCtrl',myCtrl);
记得在模块里配置!
附:还有一种controllerAS的用法,就不写了
0 0
- #学习笔记#(56)angular ui-router使用姿势
- Angular-UI-Router 学习笔记
- 【angular】angular-ui-router学习
- angular 使用 ui-router(1)
- angular-ui/ui-router的使用
- 学习angular ui-router - 管理状态
- 学习angular ui-router - 管理状态
- angular 使用 ui-router 设计网页
- angular 使用 ui-router 设计网页
- angular 使用 ui-router 设计网页
- angular 路由,ui-router,ocLazyLoad的使用
- 使用angular ui-router的一点感受
- angular+ui-router+layui的使用心得
- angular 使用 ui-router 设计网页
- Angular-Ui-Router
- Angular路由:ui-router
- Angular ui-router 入门
- Angular-ui-router入门
- 关于xcode——主从关系模版程序
- PHP生成随机密码的4种方法及性能对比
- 【日常考试】中山市2016年小学生信息学竞赛试(shui)题
- An AnnotationConfiguration instance is required to use.....异常
- Codeforces Round #346 (Div. 2) B
- #学习笔记#(56)angular ui-router使用姿势
- iOS多线程开发(四)---线程同步
- Android中shape标签里的size子标签的android:width和android:height的使用
- coffeescript学习笔记二
- iOS中instancetype和id之间的区别
- node.js学习笔记(7)--Node.js与MongoDB简单交互
- SQL:不存在则insert存在则update
- phpcms中当在后台发布文章提示文件不可写,后台生成不了静态页时
- Linux下is not in the sudoers file解决方法