我想我可以理解AngularJS的雙向綁定:$scope.foo
觀察<input type="text" ng-model="foo">
和<input>
或{{ foo }}
也觀察$scope.foo
以及。
但是那些使用$scope.foo
的功能和{{ bar() }}
中使用的功能怎麼樣 - 誰在觀察誰的原則是什麼?
實施例: https://jsfiddle.net/rt07o7sL/
<p>{{ pigLatin() }}</p>
<input type="text" ng-model="s" style="width: 600px">
JavaScript的:
$scope.s = "type some more here";
$scope.pigLatin = function() {
return $scope.s + " ey ey";
}
在此,當輸入框的內容被改變(由用戶打字),$scope.s
將得到改變,不管怎樣它觸發pigLatin()
。
出於同樣的原因,我們不應該使用很多{{}}。這會使我們的應用程序變慢。 –