【发布时间】:2018-03-09 22:29:40
【问题描述】:
在我目前的工作中,我已经在一个项目上工作了一段时间,他们正在使用 Angulajs 作为前端。最近我正在尝试实现 ES6 标准。该项目使用工厂从后端包装 API 服务,如下所示:
'use strict';
angular.module('products').factory('Products', ['$resource',
($resource)=> {
return $resource('api/products/:productId', {
productId: '@id'
},{
update: {
method: 'PUT'
},
getProductsByType : {
url: 'api/:schoolIdProduct/products/:Type',
params: {
schoolIdProduct: ':schoolIdProduct',
Type: ':Type'
},
isArray: true
}
});
}
]);
所以现在当我们从控制器调用工厂时,我只需添加工厂,然后像这样调用函数:
$rootScope.supplies = Products.getProducts({
schoolIdProduct: schoolId,
Type: 'Supplies'
});
所以当我尝试使用箭头函数和then() 等待响应时,浏览器控制台告诉我这不是函数。如何更改我的代码以使用 ES6 标准并获得类似的东西?
Products.getProducts({
schoolIdProduct: schoolId,
Type: 'Supplies'
}).then( (response) =>{
$rootScope.supplies = response;
});
【问题讨论】:
标签: javascript angularjs ecmascript-6