2017-08-24 65 views
0

我可能缺少角度渲染和賦值的一些關鍵組件,但我認爲當變量在控制器範圍內更新時,它所影響的任何區域都將被重新評估。但是,它不會出現在這個簡單的情況下工作使用動態變量角度更新對象屬性

var myApp = angular.module('myApp',[]); 


function MyCtrl($scope) { 
    $scope.name = 'Superhero'; 

    $scope.specialObject = { 
     whoawhat: $scope.name 
    } 
} 

http://jsfiddle.net/ADukg/14138/

我想到「specialObject.whoawhat」更新當我改變「名」,我也有嘗試過功能也是如此。我如何觸發對象屬性的更新?

+0

是否有你的arent結合到直接在物體理由嗎? – Ohjay44

+0

格式化問題,我必須在數據準備存儲在該屬性中之前對數據執行一些額外的功能 – Organiccat

+0

不能直接綁定到它,然後在對象上執行額外的功能? – Ohjay44

回答

1

下面是一個可以使這項工作的例子。

代碼:

<input type="text" ng-model="name" ng-change="update()"> 

var myApp = angular.module('myApp',[]); 

//myApp.directive('myDirective', function() {}); 
//myApp.factory('myService', function() {}); 

function MyCtrl($scope) { 
    $scope.name = 'Superhero'; 

    $scope.specialObject = { 
     whoawhat: $scope.name 
    } 

    $scope.update = function(){ //bind this to change 

     //do whatever logic you need to do here before updating the object 
     $scope.specialObject.whoawhat = $scope.name 
    } 
}