0

我正在尝试从控制器内部读取模型。说我有这个控制器

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范围有关吗?

4

1 回答 1

0

试试这个

console.log(JSON.stringify($scope.data));
于 2013-02-18T21:28:37.103 回答