手动初始化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 相关文章推荐
Jquery 获取表单text,areatext,radio,checkbox,select值的代码
Nov 12 Javascript
JavaScript 精粹读书笔记(1,2)
Feb 07 Javascript
Jquery插件easyUi实现表单验证示例
Dec 15 Javascript
Bootstrap框架结合jQuery仿百度换肤功能实例解析
Sep 17 Javascript
给easyui datebox扩展一个清空的实例
Nov 09 Javascript
JS简单实现获取元素的封装操作示例
Apr 07 Javascript
使用Require.js封装原生js轮播图的实现代码
Jun 15 Javascript
Bootstrap模态框插入视频的实现代码
Jun 25 Javascript
JS实现字符串中去除指定子字符串方法分析
May 17 Javascript
Vue实现一个图片懒加载插件
Mar 11 Javascript
浅谈javascript错误处理
Aug 11 Javascript
简单了解微信小程序 e.target与e.currentTarget的不同
Sep 27 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自动反斜杠的函数代码
2010/01/05 PHP
php设置允许大文件上传示例代码
2014/03/10 PHP
通过Email发送PHP错误的方法
2015/07/20 PHP
探究Laravel使用env函数读取环境变量为null的问题
2016/12/06 PHP
thinkPHP框架实现的短信接口验证码功能示例
2018/06/20 PHP
PHP PDOStatement::bindValue讲解
2019/01/30 PHP
PHP实现的微信公众号扫码模拟登录功能示例
2019/05/30 PHP
PHP getID3类的使用方法学习笔记【附getID3源码下载】
2019/10/18 PHP
锋利的jQuery 要点归纳(二) jQuery中的DOM操作(下)
2010/03/23 Javascript
JavaScript 数组详解
2013/10/10 Javascript
js 遍历json返回的map内容示例代码
2013/10/29 Javascript
js控制再次点击按钮之间的间隔时间可防止重复提交
2014/08/01 Javascript
JavaScript中的单引号和双引号报错的解决方法
2014/09/01 Javascript
nodejs基础知识
2017/02/03 NodeJs
整理关于Bootstrap模态弹出框的慕课笔记
2017/03/29 Javascript
jquery实现tab键进行选择后enter键触发click行为
2017/03/29 jQuery
浅谈JS 数字和字符串之间相互转化的纠纷
2017/10/20 Javascript
原生JS+CSS实现炫酷重力模拟弹跳系统的登录页面
2017/11/01 Javascript
jQuery实现鼠标响应式透明度渐变动画效果示例
2018/02/13 jQuery
vue spa应用中的路由缓存问题与解决方案
2019/05/31 Javascript
vue中filters 传入两个参数 / 使用两个filters的实现方法
2019/07/15 Javascript
VUE实现移动端列表筛选功能
2019/08/23 Javascript
JS中==、===你分清楚了吗
2020/03/04 Javascript
Python虚拟环境Virtualenv使用教程
2015/05/18 Python
Python输入二维数组方法
2018/04/13 Python
Python实现string字符串连接的方法总结【8种方式】
2018/07/06 Python
python opencv摄像头的简单应用
2019/06/06 Python
python实战串口助手_解决8串口多个发送的问题
2019/06/12 Python
在Django中预防CSRF攻击的操作
2020/03/13 Python
Django Admin后台添加数据库视图过程解析
2020/04/01 Python
python 图像判断,清晰度(明暗),彩色与黑白实例
2020/06/04 Python
工艺员岗位职责
2014/02/11 职场文书
安全生产管理责任书
2014/04/16 职场文书
终止劳动合同协议书
2014/10/05 职场文书
民事诉讼代理词
2015/05/25 职场文书
浅谈Redis存储数据类型及存取值方法
2021/05/08 Redis