我的控制器中有一個$scope.model
對象。它的屬性在啓動時從我的服務器獲取,並綁定到視圖中的輸入字段。我可以在角度模型的語法中使用...嗎?
<input type="text" ng-model="model.name" placeholder="name"/>
<input type="email" ng-model="model.email" placeholder="email"/>
<!-- ... -->
當我想循環來自服務器或表單域的這個模型的所有屬性。例如,我需要找到實際更改的屬性,只將它們發送回服務器。
$scope.save = function() {
// Filter changed properties
var changed = {};
for (i in $scope.model) {
if (i in initial && model[i] == initial[i])
continue;
changed[i] = model[i];
}
// Send them to server
// ...
}
但是,我不知道AngularJS是否在內部爲我的對象添加屬性。那麼使用這個語法是否安全?或者我會循環一些我不應該看到甚至操縱的AngularJS特定屬性?
親愛的downvoter,小心建議改進? – danijar
angularjs會自動綁定屬性,不需要手動循環,並且它會在你的對象發生變化時觀察你的對象 –
你是否試圖用'console.log($ scope.model)'來查看Angular是否已經添加了對象? – JJJ