吃晚加餐饭继续来给各位博友更新Angular JS<连载>
Angular JS 2操作步骤
1. 首先需要先导入angular js 库
2. 引导Ag应用的入口程序有两种:
a. ng-app指令:店家推荐,项目中常用的方式
b.bootstrap手工引导
ng-app是angular JS应用程序运行入口,angular JS程序运行时需首先找到ng-app,然后运行程序加载主要的模块,然后需在script里定义模块
代码如下:
<html ng-app=”myApp”>
//此处是通过ng-app="myApp"通过名称绑定一个模块
<script>
angular.module(“myApp”, []);
</script>
</html>
特殊情况下,也可以通过脚本来动态控制加载启动Angular应用,通过angular.bootstrap(dom,module)来启动应用
代码如下:
<html>
<div=”myDiv”></div>
<script>
angular.module(“myApp”, []);
var _div =document.getElementById(“myDiv”);
angular.bootstrap(_div, “myApp”);
</script>
</html>
3. ng-init:用于在程序运行的过程中,初始化一些变量的数据的操作.
4 ng-model=”param”:数据绑定的指令,主要用于表单元素上的数据绑定
5. ng-bind:数据绑定的指令,用于将变量的数据显示到页面上,用于替代mustache语法的。
6.ng-controller :控制器指令,用于在页面中指定控制器作用范围,通常作为属性出现;
7. ng-[event]:事件指令,用于在页面中发生某些事件时调用指令的函数。
语法如下:
var app = angular.module(“name”, []):用于定义一个angular的模块
name是模块的名称
[]中可以添加其他的模块
app.controller(“name”, function($scope){}):用于定义一个angular的控制器
name是控制器的名称
function(){}是这个控制器要处理功能的函数
$scope的作用域
$scope是放在控制器函数中的一个参数。这个参数不需要传值,而是angular自动赋值
在操作的过程中$scope就相当于一个容器,可以在$scope上声明变量或者函数,$scope上的变量和函数会自动和视图页面中的变量进行绑定,称为$scope挂载数据。
$rootScope作用域
¥rootScope是Angular JS 的根作用域,也是全局作用域,放在控制器函数中的一个参数,参数不需要传值,angular会自动赋值,挂载在$rootScope.
而$scope和$rootScope的区别就在于 scope是html和单个controller之间的桥梁,数据绑定就靠他了。rootscope是各个controller中scope的桥梁。用rootscope定义的值,可以在各个controller中使用
run()函数
配合$rootScope使用,用于声明和初始化全局数据
app.run(function($rootScope) { // 处理代码})
$scope.$watch()
挂载在$scope上,用于监控数据的变化
监控单个变量:$scope.$watch(“name”, function() {// 处理代码})
监控多个变量:$scope.$watch(“name1 + name2 + ..” + function() {})
监听对象的所有属性:$scope.$watch(“users”,function(){
})
监听数组数据/(此处值得并不是监听数组中的对象的数据)
$scope.$watchCollection(“goodses”,functio){
})
$watchCollection()只监听数组