手动初始化Angular的模块与控制器


Posted in Javascript onDecember 26, 2016

在上面的文章中,都是在html元素上绑定ng-app="myApp",然後使用angular.module('myApp',[]);来初始化模块的操作,下面我们来用angular.bootstrap方法手动初始化模块。

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>DEMO</title>
<script type="text/javascript" src="https://code.angularjs.org/1.3.8/angular.min.js"></script>
</head>
<body>
<div ng-controller='Aaa'>
 <p>{{name}}</p>
</div>
<div ng-controller='Bbb'>
 <p>{{name}}</p>
</div>
<script type="text/javascript">
var m1 = angular.module('myApp1',[]);
var m2 = angular.module('myApp2',[]);
m1.controller('Aaa',function($scope){
 $scope.name = 'hello AngularJs';
});
m2.controller('Bbb',function($scope){
 $scope.name = 'Hi';
});
//点击的时候初始化模块
document.onclick = function(){
 var aDiv = document.getElementsByTagName('div');
 //多次初始化操作
 angular.bootstrap(aDiv[0],['myApp1']);
 angular.bootstrap(aDiv[1],['myApp2']);
};
</script>
</body>
</html>

除了手动初始化模块外,还能使用run方法初始化控制器(但是数据必须是全局的)。

<!DOCTYPE HTML>
<html ng-app="myApp">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>DEMO</title>
<script type="text/javascript" src="https://code.angularjs.org/1.3.8/angular.min.js"></script>
</head>
<body>
<div>
 <p>这里没有使用ng-controller命令</p>
 <p>{{name}}</p>
</div>
<script type="text/javascript">
var m1 = angular.module('myApp',[]);
//不需要创建控制器引用也可以更改数据
//rootScope是全局作用域
m1.run(['$rootScope',function($rootScope){
 $rootScope.name = 'hello';
}]);
</script>
</body>
</html>

在run下不能使用$scope局部,否侧会报错!

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
JavaScript类和继承 constructor属性
Mar 04 Javascript
document.createElement()用法
Mar 13 Javascript
JavaScript中的类(Class)详细介绍
Dec 30 Javascript
如何减少浏览器的reflow和repaint
Feb 26 Javascript
jQuery插件MixItUp实现动画过滤和排序
Apr 12 Javascript
JavaScript 判断一个对象{}是否为空对象的简单方法
Oct 09 Javascript
Node.js中.pfx后缀文件的处理方法
Mar 10 Javascript
js注册时输入合法性验证方法
Oct 21 Javascript
微信小程序实现动态改变view标签宽度和高度的方法【附demo源码下载】
Dec 05 Javascript
三种Webpack打包方式(小结)
Sep 19 Javascript
vue 实现强制类型转换 数字类型转为字符串
Nov 07 Javascript
微信小程序中插入激励视频广告并获取收益(实例代码)
Dec 06 Javascript
详解Python中logging日志模块在多进程环境下的使用
Dec 26 #Javascript
Angular的事件和表单详解
Dec 26 #Javascript
Angular的MVC和作用域
Dec 26 #Javascript
JS中用try catch对代码运行的性能影响分析
Dec 26 #Javascript
开源免费天气预报接口API及全国所有地区代码(国家气象局提供)
Dec 26 #Javascript
Angular的$http与$location
Dec 26 #Javascript
Angular ng-repeat指令实例以及扩展部分
Dec 26 #Javascript
You might like
php数组声明、遍历、数组全局变量使用小结
2013/06/05 PHP
Django中的cookie与session操作实例代码
2017/08/17 PHP
用js脚本控制asp.net下treeview的NodeCheck的实现代码
2010/03/02 Javascript
JavaScript中的prototype使用说明
2010/04/13 Javascript
原生js实现复制对象、扩展对象 类似jquery中的extend()方法
2014/08/30 Javascript
jQuery使用toggleClass方法动态添加删除Class样式的方法
2015/03/26 Javascript
javascript的BOM汇总
2015/07/16 Javascript
js带点自动图片轮播幻灯片特效代码分享
2015/09/07 Javascript
简单谈谈JS数组中的indexOf方法
2016/10/13 Javascript
原生js实现轮播图的示例代码
2017/02/20 Javascript
javascript  数组排序与对象排序的实例
2017/07/17 Javascript
jQuery实现点击下拉框中的值累加到文本框中的方法示例
2017/10/28 jQuery
Vue CLI 3搭建vue+vuex最全分析(推荐)
2018/09/27 Javascript
vue: WebStorm设置快速编译运行的方法
2018/10/18 Javascript
Vue常用传值方式、父传子、子传父及非父子实例分析
2020/02/24 Javascript
[59:53]DOTA2-DPC中国联赛 正赛 VG vs Elephant BO3 第二场 3月6日
2021/03/11 DOTA
python根据路径导入模块的方法
2014/09/30 Python
Python图像灰度变换及图像数组操作
2016/01/27 Python
Python输出汉字字库及将文字转换为图片的方法
2016/06/04 Python
python使用邻接矩阵构造图代码示例
2017/11/10 Python
python读取中文txt文本的方法
2018/04/12 Python
python3调用windows dos命令的例子
2019/08/14 Python
matplotlib.pyplot画图并导出保存的实例
2019/12/07 Python
pytorch实现对输入超过三通道的数据进行训练
2020/01/15 Python
python3+openCV 获取图片中文本区域的最小外接矩形实例
2020/06/02 Python
Keras实现支持masking的Flatten层代码
2020/06/16 Python
水芝澳美国官网:H2O Plus
2016/10/15 全球购物
您附近的水疗和健康场所:Spafinder(美国)
2019/07/05 全球购物
英国经济型酒店品牌:Travelodge
2019/12/17 全球购物
Fnac西班牙官网:法国文化和电子产品零售商
2021/03/14 全球购物
网站设计师的岗位职责
2013/11/21 职场文书
莫言诺贝尔获奖演讲稿
2014/05/21 职场文书
新法人代表任命书
2014/06/06 职场文书
庆六一文艺汇演活动方案
2014/08/26 职场文书
Python自然语言处理之切分算法详解
2021/04/25 Python
阿里云ECS云服务器快照的概念以及如何使用
2022/04/21 Servers