我從api獲取ajax數據並將其保存到變量中。我必須對這些數據進行「編輯和保存」或「編輯和取消」更改。我正在使用ng-model來顯示和編輯這些數據。爲什麼angularjs改變不同的變量?
這裏是我的腳本:
function getData() {
$http({
method: 'POST',
url: API + '/api/Educations/UserEducations',
data: {}
}).then(function successCallback(response) {
vm.UserData = response.data;
vm.CachedUserData = response.data;
})
}
這裏是我的html:
<div ng-repeat="education in editEducationsCtrl.UserData">
<div>{{education.SchoolName}}</div>
<input type="text" ng-model="education.SchoolName">
<button ng-click="editEducationsCtrl.saveChanges()">Save</button>
<button ng-click="editEducationsCtrl.cancelChanges()">Cancel</button>
</div>
當用戶點擊取消按鈕,我想編寫HTML緩存數據。 但是, 當我嘗試訪問vm.CachedUserData變量時,我看到這個緩存數據已經隨着vm.UserData的新值而改變......怎麼樣?我檢查了我的代碼,沒有函數訪問CachedUserData變量。即使我將變量名稱更改爲唯一名稱,但結果相同。
我想將第一個數據保存在變量中。但角度改變他們兩個。 2路數據綁定是否會更改連接相同ajax數據的所有變量?
它的工作,謝謝但Html視圖不改變,當我分配'vm.UserData = vm.CachedData'。你能幫我解決這個問題嗎? – Sam
沒有意義,大概這個變量名是錯的,應該是'vm.CachedUserData'? –