の古い値を与える:角度コントローラのメソッドは、私がやろうとしていますどのような範囲
私は、テキスト入力フィールドを持つディレクティブを作成しています。また、値とonChangeメソッドをスコープパラメータとして取ります。 htmlにあるようにコントローラがこのディレクティブを覆い、このコントローラはonChangeメソッドの実装とvalueのモデルを提供します。
私が直面しています問題:
はラインconsole.log($scope.data)
を参照してください。この文は、コンソール内のデータ・オブジェクトの古い値を出力します。
これは何が起こっているのでしょうか。
JSのcoddeここ
angular.module('APP', [])
.directive('txtInput', function() {
return {
restrict: "E",
replace: true,
scope: {
value: '=',
onChange: '&',
},
template:
'<div>'+
'<input type="text" '+
'ng-change = "onChange()" '+
'ng-model="value" />'+
'</div>',
}
})
.controller('pageCtrl', function($scope) {
$scope.data = {
userPost: "sdsds",
}
$scope.onPostInputChange = function() {
console.log($scope.data)
}
})
はHTML
<div ng-app='APP' ng-controller="pageCtrl">
<txt-input
value="data.userPost"
on-change="onPostInputChange()"> </txt-input>
</div>
。またこれは、共同でJSFIDDLE
可能な重複古い値を取得](http://stackoverflow.com/questions/34775267/angular-ngchange-handler-gets-old-v alue) –