Angularjs 设置全局变量的方法总结


Posted in Javascript onOctober 20, 2016

AngularJS 设置全局变量的三种方法

angularjs自身有二种,设置全局变量的方法,在加上js的设置全局变量的方法,总共有三种。要实现的功能是,在ng-app中定义的全局变量,在不同的ng-controller里都可以使用。

1,通过var 直接定义global variable,这根纯js是一样的。

2,用angularjs value来设置全局变量 。

3,用angularjs constant来设置全局变量 。

下面用一个例子,来说明,上面3种方法:

实例:

1,在app模块中,定义全局变量

'use strict';

/* App Module */

var test2 = 'tank';     //方法1,定义全局变量

var phonecatApp = angular.module('phonecatApp', [   //定义一个ng-app
 'ngRoute',
 'phonecatControllers',
 'tanktest'
]);

phonecatApp.value('test',{"test":"test222","test1":"test111"}); //方法2定义全局变量

phonecatApp.constant('constanttest', 'this is constanttest');  //方法3定义全局变量

phonecatApp.config(['$routeProvider',        //设置路由
 function($routeProvider) {
  $routeProvider.
   when('/phones', {
    templateUrl: 'partials/phone-list.html'   //这里没有设置controller,可以在模块中加上ng-controller
   }).
   when('/phones/:phoneId', {
    templateUrl: 'partials/phone-detail.html',
    controller: 'PhoneDetailCtrl'
   }).
   when('/login', {
    templateUrl: 'partials/login.html',
    controller: 'loginctrl'
   }).
   otherwise({
    redirectTo: '/login'
   });
 }]);

2,在controller中调用全局变量

'use strict';

/* Controllers */

var phonecatControllers = angular.module('phonecatControllers', []);

phonecatControllers.controller('PhoneListCtrl', ['$scope','test','constanttest',
 function($scope,test,constanttest) {
  $scope.test = test;          //方法2,将全局变量赋值给$scope.test
  $scope.constanttest = constanttest;  //方法3,赋值
  $scope.test2 = test2;         //方法1,赋值
 }]);

3,在html中看一下效果

<div data-ng-controller="PhoneListCtrl">
  {{test.test1}}
  {{constanttest}}
  {{test2}}
</div>

结果:test111 this is constanttest tank

其实我们可以通过其他方法来实现全局变量,例如:angularjs factory的功能。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
JS array 数组详解
Mar 22 Javascript
javascript中简单的进制转换代码实例
Oct 26 Javascript
JS中完美兼容各大浏览器的scrolltop方法
Apr 17 Javascript
js实现当前输入框高亮显示的方法
Aug 19 Javascript
jquery实现浮动在网页右下角的彩票开奖公告窗口代码
Sep 04 Javascript
分享一道关于闭包、bind和this的面试题
Feb 20 Javascript
AngularJS+bootstrap实现动态选择商品功能示例
May 17 Javascript
jquery实现用户登陆界面(示例讲解)
Sep 06 jQuery
vue.js中父组件调用子组件的内部方法示例
Oct 22 Javascript
JS实现提交表单前的数字及邮箱校检功能
Nov 13 Javascript
vuex的使用及持久化state的方式详解
Jan 23 Javascript
Vue组件库发布到npm详解
Feb 17 Javascript
seajs学习之模块的依赖加载及模块API的导出
Oct 20 #Javascript
Angular表单验证实例详解
Oct 20 #Javascript
NODE.JS跨域问题的完美解决方案
Oct 20 #Javascript
seajs学习教程之基础篇
Oct 20 #Javascript
Angular.JS学习之依赖注入$injector详析
Oct 20 #Javascript
Javascript中内建函数reduce的应用详解
Oct 20 #Javascript
基于AngularJS前端云组件最佳实践
Oct 20 #Javascript
You might like
php导入csv文件碰到乱码问题的解决方法
2014/02/10 PHP
laravel 根据不同组织加载不同视图的实现
2019/10/14 PHP
thinkphp5.1 框架导入/导出excel文件操作示例
2020/05/25 PHP
Jquey拖拽控件Draggable使用方法(asp.net环境)
2010/09/28 Javascript
jquery select动态加载选择(兼容各种浏览器)
2013/02/01 Javascript
用表格输出1-1000之间的数字实现代码(附特效)
2013/04/21 Javascript
node.js中的fs.chownSync方法使用说明
2014/12/16 Javascript
js表头排序实现方法
2015/01/16 Javascript
学习使用bootstrap3栅格系统
2016/04/12 Javascript
微信小程序 教程之事件
2016/10/18 Javascript
javascript设计模式之单体模式学习笔记
2017/02/15 Javascript
layui表格实现代码
2017/05/20 Javascript
详解angular笔记路由之angular-router
2017/09/12 Javascript
vue自定义指令的创建和使用方法实例分析
2018/12/04 Javascript
Vue动态组件和异步组件原理详解
2019/05/06 Javascript
vue element-ui el-date-picker限制选择时间为当天之前的代码
2019/11/07 Javascript
python实现迭代法求方程组的根过程解析
2019/11/25 Javascript
基于Vue的侧边目录组件的实现
2020/02/05 Javascript
微信小程序云函数添加数据到数据库的方法
2020/03/04 Javascript
常见python正则用法的简单实例
2016/06/21 Python
Django应用程序中如何发送电子邮件详解
2017/02/04 Python
Python基于回溯法子集树模板解决选排问题示例
2017/09/07 Python
python实现闹钟定时播放音乐功能
2018/01/25 Python
django的登录注册系统的示例代码
2018/05/14 Python
python 分离文件名和路径以及分离文件名和后缀的方法
2018/10/21 Python
python读取Excel表格文件的方法
2019/09/02 Python
Python 矩阵转置的几种方法小结
2019/12/02 Python
使用 Python 合并多个格式一致的 Excel 文件(推荐)
2019/12/09 Python
匡威比利时官网:Converse Belgium
2017/04/13 全球购物
SQL Server数据库笔试题和答案
2016/02/04 面试题
销售求职信范文
2014/05/26 职场文书
《改造我们的学习》心得体会
2014/11/07 职场文书
导游词之杭州西湖
2019/09/19 职场文书
导游词之河北白洋淀
2020/01/15 职场文书
Python办公自动化之教你用Python批量识别发票并录入到Excel表格中
2021/06/26 Python
使用Postman测试需要授权的接口问题
2022/06/21 Java/Android