双向绑定,即MVVM,也就是数据影响视图,视图也会影响数据。
一个M影响V最简单的示例就是这样:
<div ng-controller="CounterCtrl">
<span ng-bind="counter"></span>
<button ng-click="counter++">increase</button>
</div>
function CounterCtrl($scope) {
$scope.counter = 1;
}
这个例子很简单,毫无特别之处,每当点击一次按钮,界面上的数字就增加一。
下面,我们举一个V影响M的例子:
<!DOCTYPE html>
<html ng-app>
<head>
<meta charset="utf-8">
<title>ng-model directive</title>
</head>
<body ng-controller="HelloController">
<div>
<p>双向绑定</p>
<input ng-model="greeting">
<p>Hello {{greeting || "World"}}</p>
<button ng-click="init()">重置</button>
<hr>
</div>
<script src="../lib/angularjs/1.2.26/angular.min.js"></script>
<script>
function HelloController($scope) {
$scope.init = function() {
$scope.greeting = "Hello";
}
}
</script>
</body>
</html>
双向绑定 使得函数通过依赖管理系统仅仅需要声明需要的协作对象,而不需要知道从哪里来
原文:http://www.cnblogs.com/shytong/p/4993363.html