gpt4 book ai didi

javascript - Angular : centralised resource factory with promises

转载 作者:行者123 更新时间:2023-11-29 15:37:34 25 4
gpt4 key购买 nike

假设我有一个如下所示的资源:

angular.module('productsModule').factory('productFactory', function($resource) {
return $resource('/products/:id',{},
{'query': {method: 'GET', isArray: false }});
});

现在我可以像这样在 Controller 中使用它了:

productFactory.query().$promise.then(function(products) {
// success
console.log(products);
$scope.products = products;
});

但是,我想将该功能移至工厂,以便我可以在任何 Controller 中执行此操作,它会在保持 promise 的同时为我提供产品列表:

$scope.products = productFactory.products 

这样我就可以拥有一个集中的可重用资源。我怎样才能在 Angular 中实现这一点?

最佳答案

您实际上可以使用 ngResource 执行此操作,而原生 promises 不再解包您可以简单地执行以下操作:

 $scope.products = productFactory.query();

这是因为在 ngResource 上执行 .query 将返回一个空数组,当请求返回到客户端时,该数组将自动流行并运行摘要。

关于javascript - Angular : centralised resource factory with promises,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25774138/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com