在这里分享我做的一个使用ui-router 传参的小demo

1.首先第一步设置入口文件index.html,注意加载的顺序,先加载包,再加载自己写的控制器。
<!doctype html> <html lang="en" ng-app="routerApp"> <head> <meta charset="utf-8"> <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width"> <title>测试</title> <!--lib是angular包的文件夹--> <script src="lib/jquery/jquery-1.11.3.min.js"></script> <script src="lib/angular/angular.js"></script> <script src="lib/angular-ui/angular-ui-router.js"></script> <!--js控制器的文件夹--> <script src="js/app.js"></script> <script src="js/indexCtrl.js"></script> <script src="js/resultCtrl.js"></script> </head> <body> <div ui-view> </div> </body> </html>
2.app.js文件,依赖注入,设置路由,此处的路由是使用ui-router路由,这里简单的演示了两个模板之间的传参,传递参数的模板test.html和接收参数的模板result.html
var routerApp = angular.module('routerApp', ['ui.router']);
routerApp.run(function($rootScope, $state, $stateParams) {
$rootScope.$state = $state;
$rootScope.$stateParams = $stateParams;
});
routerApp.config(function($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise('/index');
$stateProvider
.state('index', {//模板的参数
url: '/index',//url的参数
templateUrl: 'templates/test.html',//模板的位置
controller: 'MyController'
})
.state('result', {
url: '/result/:id/:number',//需要传的参数的键名
templateUrl: 'templates/result.html',
controller: 'resultCtrl'
});
});
3.第一个主页面的模板test.html,并且设置点击事件toResult()
<meta charset="UTF-8"> <div>hello world</div> <input type="button" ng-click="toResult()" value="toResult">
4.test.html的控制器indexCtrl.js,设置需要传递的参数$scope.abc和$scope.toResult,点击事件toResult()里面其实就是一个$state.go('模板的参数',{app.js里面需要传的参数的键名:需要传的参数值})的方法
routerApp.controller('MyController', function($scope, $state) {
$scope.abc = "nice";//需要传的参数值
$scope.def = 10;//需要传的参数值
$scope.toResult = function(){
$state.go('result',{id: $scope.abc,number: $scope.def});
}
});
5.接收参数的模板result.html
<meta charset="UTF-8"> <div>hello world2</div>
6.result.html的控制器resultCtrl.js,这里使用$stateParams的方法去接收上一个页面传递过来的参数
routerApp.controller('resultCtrl', function($scope, $state, $stateParams) {
var id = $stateParams.id;
var number = $stateParams.number;
console.log(id);
console.log(number);
});
项目目录
js\app.js、indexCtrl.js、resultCtrl.js
lib\
jquery\jquery-1.11.3.min.js
angular\angular.js
angular-ui\angular-ui-router.js
templates\test.html、result.html
index.html
其实整个过程并不难,只是穿插在模板和控制器之间,容易让人摸不着头脑,只要分清楚具体的参数是对应哪一个,很容易理解。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# ui
# router路由传参
# router
# 路由跳转
# angular路由ui
# 详解AngularJs ui-router 路由的简单介绍
# angularjs ui-router中路由的二级嵌套
# AngularJS ui-router (嵌套路由)实例
# angular基于路由控制ui-router实现系统权限控制
# 加载
# 让人
# 在这里
# 第一个
# 键名
# 很容易
# 摸不着头脑
# 我做
# 再加
# 插在
# 大家多多
# 并不难
# initial
# content
# scale
# user
# maximum
# meta
# head
# charset
相关文章:
如何基于云服务器快速搭建网站及云盘系统?
javascript基本数据类型及类型检测常用方法小结
免费制作海报的网站,哪位做平面的朋友告诉我用什么软件做海报比较好?ps还是cd还是ai这几个软件我都会些我是做网页的?
如何快速搭建高效WAP手机网站?
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
网站代码制作软件有哪些,如何生成自己网站的代码?
建站主机是什么?如何选择适合的建站主机?
建站主机默认首页配置指南:核心功能与访问路径优化
建站之星多图banner生成与模板自定义指南
常州企业建站如何选择最佳模板?
建站之星如何快速生成多端适配网站?
制作假网页,招聘网的薪资待遇,会有靠谱的吗?一面试又各种折扣?
如何用美橙互联一键搭建多站合一网站?
如何高效完成自助建站业务培训?
在线制作视频网站免费,都有哪些好的动漫网站?
建站主机CVM配置优化、SEO策略与性能提升指南
简单实现Android验证码
电商网站制作公司有哪些,1688网是什么意思?
国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?
山东网站制作公司有哪些,山东大源集团官网?
如何用PHP工具快速搭建高效网站?
c# Task.ConfigureAwait(true) 在什么场景下是必须的
电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?
如何快速搭建高效香港服务器网站?
如何将凡科建站内容保存为本地文件?
如何快速搭建FTP站点实现文件共享?
制作网站的基本流程,设计网站的软件是什么?
h5在线制作网站电脑版下载,h5网页制作软件?
打鱼网站制作软件,波克捕鱼官方号怎么注册?
电商平台网站制作流程,电商网站如何制作?
寿县云建站:智能SEO优化与多行业模板快速上线指南
如何配置WinSCP新建站点的密钥验证步骤?
免费网站制作appp,免费制作app哪个平台好?
清除minerd进程的简单方法
建站之星如何实现PC+手机+微信网站五合一建站?
相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?
太原网站制作公司有哪些,网约车营运证查询官网?
建站之家VIP精选网站模板与SEO优化教程整合指南
南阳网站制作公司推荐,小学电子版试卷去哪里找资源好?
阿里云网站搭建费用解析:服务器价格与建站成本优化指南
开源网站制作软件,开源网站什么意思?
如何在局域网内绑定自建网站域名?
PHP 500报错的快速解决方法
太平洋网站制作公司,网络用语太平洋是什么意思?
,南京靠谱的征婚网站?
临沂网站制作企业,临沂第三中学官方网站?
如何设计高效校园网站?
深入理解Android中的xmlns:tools属性
大学网站设计制作软件有哪些,如何将网站制作成自己app?
如何在宝塔面板中创建新站点?
*请认真填写需求信息,我们会在24小时内与您取得联系。