我正在尝试从控制器内部读取模型。说我有这个控制器
angular.module('app', [])
.controller('MainCtrl', function($scope) {
$scope.data = {title: 'foo'};
$scope.log = function() {
console.log($scope.data);
}
});
而这个标记
<div ng-app="app" ng-controller="MainCtrl">
<input ng-model="data.title">
<button ng-click="log()">log</button>
</div>
当我第一次按下按钮时,如果我修改了值,但所有后续点击只会再次记录第一个模型,无论输入数据是否更改。
我没有得到什么?我应该为此目的使用其他东西吗?服务?
小提琴:http: //jsfiddle.net/J6jLz/1/
奇怪 的是,如果我在记录实际数据对象之前记录“标题”属性,它会起作用:http: //jsfiddle.net/Yf5kz/4/
这可能与$apply
范围有关吗?