Angular.js基础学习之初始化


Posted in Javascript onMarch 10, 2017

一、绑定初始化,自动加载

通过绑定来进行angular的初始化,会把js代码侵入到html中。

ng-app是angular的一个指令,代表一个angular应用(也叫模块)。使用ng-appng-app=""来标记一个DOM结点,让框架会自动加载。也就是说,ng-app是可以带属性值的。

<body ng-app="myApp">
 <div ng-controller="myCtrl">
  {{ hello }}
 </div>
 <script type="text/javascript">
  var myModule = angular.module("myApp",[]);
  myModule.controller("myCtrl",function($scope){
   $scope.hello = "hello,angular!";
  });
 </script>
</body>

二、手动初始化

如果想对对初始化有更多的控制权,可以采用自定义手动引导方法初始化代替angular的自动初始化。比如你需要在angular编译模板之前做一些事情,比如改变模板某些内容。

Angular中也提供了手动绑定的api——bootstrap,它的使用方式如下:

angular.bootstrap(element, [modules], [config]);

其中第一个参数element:是绑定ng-app的dom元素;

  • modules:绑定的模块名字
  • config:附加的配置

值得注意的是:

  • angular.bootstrap只会绑定第一次加载的对象。
  • 后面重复的绑定或者其他对象的绑定,都会在控制台输出错误提示。
<html>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <script src="http://apps.bdimg.com/libs/angular.js/1.2.16/angular.min.js"></script>
<body id="body">
 <div ng-controller="myCtrl">
  {{ hello }}
 </div>
 <script type="text/javascript">
  var app = angular.module("bootstrapTest",[]);
  app.controller("myCtrl",function($scope){
   $scope.hello = "hello,angular from bootstrap";
  });
  
  // angular.bootstrap(document.getElementById("body"),['bootstrapTest']);
  angular.bootstrap(document,['bootstrapTest']);
 </script>
</body>
</html>
<html>
 
 <head>
 <script src="angular.js"></script>
 <script>
 
 // 创建moudle1
 var rootMoudle = angular.module('moudle1', []);
 rootMoudle.controller("controller1",function($scope){$scope.name="aty"});
 
 // 创建moudle2
 var m2 = angular.module('moudle2', []);
 m2.controller("controller2",function($scope){$scope.name="aty"});
 
 
 // 页面加载完成后,再加载模块
 angular.element(document).ready(function() {
  angular.bootstrap(document.getElementById("div1"),["moudle1"]);
  angular.bootstrap(document.getElementById("div2"),["moudle2"]);
 });
 
 </script>
 
 <head>
 <body>
 <div id="div1" ng-controller="controller1">div1:{{name}}</div>
 <div id="div2" ng-controller="controller2">div2:{{name}}</div>
 </body>
 
</html>

总结

以上就是关于angular.js初始化的全部内容了,希望本文的内容对大家学习或者使用Angular.js能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
键盘控制事件应用教程大全
Nov 24 Javascript
javascript中取前n天日期的两种方法分享
Jan 26 Javascript
jQuery获得子元素个数的方法
Apr 14 Javascript
JavaScript动态添加style节点的方法
Jun 09 Javascript
高效Web开发的10个jQuery代码片段
Jul 22 Javascript
JavaScript设计模式之单例模式详解
Jun 09 Javascript
input输入框内容实时监测(附代码)
Aug 15 Javascript
详解使用vue-admin-template的优化历程
May 20 Javascript
浅谈vue首屏加载优化
Jun 28 Javascript
微信小程序 MinUI组件库系列之badge徽章组件示例
Aug 20 Javascript
在layui中使用form表单监听ajax异步验证注册的实例
Sep 03 Javascript
js 动态校验开始结束时间的实现代码
May 25 Javascript
js实现返回顶部效果
Mar 10 #Javascript
Vue.directive自定义指令的使用详解
Mar 10 #Javascript
Node.js如何响应Ajax的POST请求并且保存为JSON文件详解
Mar 10 #Javascript
微信小程序 图片加载(本地,网路)实例详解
Mar 10 #Javascript
微信小程序 页面传值详解
Mar 10 #Javascript
详解Vue生命周期的示例
Mar 10 #Javascript
jQuery表格(Table)基本操作实例分析
Mar 10 #Javascript
You might like
基于mysql的论坛(7)
2006/10/09 PHP
PHP 中的面向对象编程:通向大型 PHP 工程的办法
2006/12/03 PHP
php学习笔记 [预定义数组(超全局数组)]
2011/06/09 PHP
使用PHP函数scandir排除特定目录
2014/06/12 PHP
PHP常用技术文之文件操作和目录操作总结
2014/09/27 PHP
PHP文件下载实例代码浅析
2016/08/17 PHP
Laravel框架实现的使用smtp发送邮件功能示例
2019/03/12 PHP
让人期待的2011年度最佳 jQuery 插件分享
2012/03/16 Javascript
jQuery阻止事件冒泡具体实现
2013/10/11 Javascript
深入理解JavaScript系列(41):设计模式之模板方法详解
2015/03/04 Javascript
js动态修改表格行colspan列跨度的方法
2015/03/30 Javascript
Jquery幻灯片特效代码分享--鼠标点击按钮时切换(1)
2015/08/15 Javascript
javascript正则表达式之分组概念与用法实例
2016/06/16 Javascript
利用css+原生js制作简单的钟表
2020/04/07 Javascript
AngularJs自定义服务之实现签名和加密
2016/08/02 Javascript
Vue.js Ajax动态参数与列表显示实现方法
2016/10/20 Javascript
JS动画定时器知识总结
2018/03/23 Javascript
vue.js打包之后可能会遇到的坑!
2018/06/03 Javascript
在 Vue-CLI 中引入 simple-mock实现简易的 API Mock 接口数据模拟
2018/11/28 Javascript
小程序显示弹窗时禁止下层的内容滚动实现方法
2019/03/20 Javascript
基于JavaScript判断两个对象内容是否相等
2020/01/10 Javascript
JavaScript实现缓动动画
2020/11/25 Javascript
NodeJS配置CORS实现过程详解
2020/12/02 NodeJs
[02:08]2014DOTA2国际邀请赛 430专访:力争取得小组前二
2014/07/11 DOTA
怎样使用Python脚本日志功能
2016/08/14 Python
python中闭包Closure函数作为返回值的方法示例
2017/12/17 Python
Python列表删除元素del、pop()和remove()的区别小结
2019/09/11 Python
python同时替换多个字符串方法示例
2019/09/17 Python
纯CSS3制作的鼠标悬停时边框旋转
2017/01/03 HTML / CSS
美国户外生活方式品牌:Eddie Bauer
2016/12/28 全球购物
YOINS官网:时尚女装网上购物
2017/03/17 全球购物
大专应届生个人简历的自我评价
2013/10/15 职场文书
2014年两会学习心得范例
2014/03/17 职场文书
个人租房协议书(范本)
2014/10/14 职场文书
写给女朋友的保证书
2015/05/09 职场文书
2015大学迎新晚会策划书
2015/07/16 职场文书