手动初始化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 参考教程
Dec 29 Javascript
Javascript &amp; DHTML 实例编程(教程)基础知识
Jun 02 Javascript
JavaScript学习笔记(十七)js 优化
Feb 04 Javascript
JQuery 图片滚动轮播示例代码
Mar 24 Javascript
JavaScript操作Oracle数据库示例
Mar 06 Javascript
js canvas实现擦除动画
Jul 16 Javascript
JS自定义混合Mixin函数示例
Nov 26 Javascript
微信页面弹出键盘后iframe内容变空白的解决方案
Sep 20 Javascript
详解vue-cli项目中用json-sever搭建mock服务器
Nov 02 Javascript
jQuery替换节点元素的操作方法
Mar 18 jQuery
layui弹出层按钮提交iframe表单的方法
Aug 20 Javascript
深入分析JavaScript 事件循环(Event Loop)
Jun 19 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代码
2016/08/08 PHP
Laravel使用memcached缓存对文章增删改查进行优化的方法
2016/10/08 PHP
PHP 布尔值的自增与自减的实现方法
2018/05/03 PHP
PHP 多任务秒级定时器的实现方法
2018/05/13 PHP
初学JavaScript第二章
2008/09/30 Javascript
js调试工具 Javascript Debug Toolkit 2.0.0版本发布
2008/12/02 Javascript
深入理解JavaScript系列(2) 揭秘命名函数表达式
2012/01/15 Javascript
JS中批量给元素绑定事件过程中的相关问题使用闭包解决
2013/04/15 Javascript
js将json格式内容转换成对象的方法
2013/11/01 Javascript
JavaScript判断变量是否为undefined的两种写法区别
2013/12/04 Javascript
jquery获取颜色在ie和ff下的区别示例介绍
2014/03/28 Javascript
谷歌浏览器不支持showModalDialog模态对话框的解决方法
2014/09/22 Javascript
jQuery中大家不太了解的几个方法
2015/03/04 Javascript
AngularJS中的$watch(),$digest()和$apply()区分
2016/04/04 Javascript
js图片上传前预览功能(兼容所有浏览器)
2016/08/24 Javascript
Angular2 PrimeNG分页模块学习
2017/01/14 Javascript
Angularjs+bootstrap+table多选(全选)支持单击行选中实现编辑、删除功能
2017/03/27 Javascript
详解nodejs微信公众号开发——2.自动回复
2017/04/10 NodeJs
详解Angular中的自定义服务Service、Provider以及Factory
2017/04/22 Javascript
angularJS的radio实现单项二选一的使用方法
2018/02/28 Javascript
vue实现图片上传到后台
2020/06/29 Javascript
JavaScript中的函数式编程详解
2020/08/22 Javascript
使用Node.js和Socket.IO扩展Django的实时处理功能
2015/04/20 Python
python中的不可变数据类型与可变数据类型详解
2018/09/16 Python
Django框架使用mysql视图操作示例
2019/05/15 Python
Python动态参数/命名空间/函数嵌套/global和nonlocal
2019/05/29 Python
CSS3 实现倒计时效果
2020/11/25 HTML / CSS
医学专业五年以上个人求职信
2013/12/03 职场文书
班会关于环保演讲稿
2013/12/29 职场文书
优秀大学生求职自荐信范文
2014/04/19 职场文书
数控专业毕业生求职信
2014/06/12 职场文书
入党积极分子对十八届四中全会期盼的思想汇报
2014/10/17 职场文书
护士年终个人总结
2015/02/13 职场文书
联村联户简报
2015/07/21 职场文书
写一个Python脚本下载哔哩哔哩舞蹈区的所有视频
2021/05/31 Python
Django实现WebSocket在线聊天室功能(channels库)
2021/09/25 Python