table 中的值在更新 AngularJS 中的 $localStorage 数据后未更新
Value in table is not getting updated after updating $localStorage data in AngularJS
我在 AngularJS 中有两个组件。一个组件 usersList
包含一个 table
<table>
<tbody>
<tr ng-repeat="..."><!--Contains code to repeat the entries in usersList localstorage object--></tr>
</tbody>
</table>
在页面加载时,此组件从 API 中获取用户列表及其详细信息,并将其存储在 $localStorage 中。
其他是一种形式 editUserProfile
,其中值被编辑和删除
app.component("editUserProfile", {
...
controller: function($localStorage, ...) {
vm.$storage = $localStorage;
// Do other things
// Some event (edit) is successful, update the userslist in $localStorage
vm.$storage.usersList = response
}
})
所以基本上,我正在编辑用户详细信息并通过调用 API 删除用户,当 edit/delete 成功时,我刷新 usersList 的 $localStorage 值,它是 JSON对象。
在更新数据之前一切正常,但是更改没有反映在 usersList 组件中。我这样做是为了保存对 API 的调用以仅显示数据。欢迎任何其他想法。
看到这个 Plunkr 工作。
var app = angular.module('app', ['ngStorage']);
app.controller('mainCtrl', function($scope, $localStorage){
$scope.$storage = $localStorage;
$scope.$storage.entity = [];
$scope.add = function(){
$scope.$storage.entity.push('New entry');
}
});
好像$localStorage
应该传入$scope
。
Pass $localStorage (or $sessionStorage) by reference to a hook under $scope in plain ol' JavaScript.
您的问题可能与 vm.$storage
作业有关。
我在 AngularJS 中有两个组件。一个组件 usersList
包含一个 table
<table>
<tbody>
<tr ng-repeat="..."><!--Contains code to repeat the entries in usersList localstorage object--></tr>
</tbody>
</table>
在页面加载时,此组件从 API 中获取用户列表及其详细信息,并将其存储在 $localStorage 中。
其他是一种形式 editUserProfile
,其中值被编辑和删除
app.component("editUserProfile", {
...
controller: function($localStorage, ...) {
vm.$storage = $localStorage;
// Do other things
// Some event (edit) is successful, update the userslist in $localStorage
vm.$storage.usersList = response
}
})
所以基本上,我正在编辑用户详细信息并通过调用 API 删除用户,当 edit/delete 成功时,我刷新 usersList 的 $localStorage 值,它是 JSON对象。
在更新数据之前一切正常,但是更改没有反映在 usersList 组件中。我这样做是为了保存对 API 的调用以仅显示数据。欢迎任何其他想法。
看到这个 Plunkr 工作。
var app = angular.module('app', ['ngStorage']);
app.controller('mainCtrl', function($scope, $localStorage){
$scope.$storage = $localStorage;
$scope.$storage.entity = [];
$scope.add = function(){
$scope.$storage.entity.push('New entry');
}
});
好像$localStorage
应该传入$scope
。
Pass $localStorage (or $sessionStorage) by reference to a hook under $scope in plain ol' JavaScript.
您的问题可能与 vm.$storage
作业有关。