我有一个简单的查询。如何在angularJs中存储一些数据或值以供以后使用?让我更清楚一点:我想从一个控制器存储一个值并在其他控制器中使用它?
答案 0 :(得分:2)
你应该使用角度服务来实现这一目标。请注意,角度服务是单例,可以注入控制器。一个快速的原型来展示基本的:
angular.module('myApp', []).factory('myService', function () {
var o = {x:1, y:2};
return {
getO: getO,
setO: setO
};
function getO() {
return o;
}
function setO(x, y) {
o.x = x;
o.y = y;
}
});
angular.module('myApp').controller('MyCtrlA', function ($scope, myService) {
myService.setO(3, 4);
});
angular.module('myApp').controller('MyCtrlB', function ($scope, myService) {
var o = myService.getO(); // {x:3, y:4}
});
答案 1 :(得分:1)
听起来像Angular术语中的“服务”。为了在服务中保留数据,您可以使用从本地存储到云端json后端的各种实现,例如firebase。
答案 2 :(得分:1)
如果你不需要刷新页面就有一个$cacheFactory
它可以解决问题https://docs.angularjs.org/api/ng/service/$cacheFactory
因此,无论何时何地,只要您需要,您都可以轻松地从缓存中获取和获取内容