我正在构建一个使用组件结构的Angular 1.5应用程序。承诺从服务中的$ http调用返回后,我试图调用另一个函数在数据集显示在UI上之前对其进行过滤。控制器中的角函数没有在承诺后调用
但是,filterApps函数没有被调用。
另外...在filterApps函数我试图比较对象数组并返回具有相同名称的数组。这是最好的方式去做这件事还是有一个更清洁的方式?
控制器:
import allApps from '../../resources/data/application_data.js';
class HomeController {
/*@ngInject*/
constructor(ItemsService) {
this.itemsService = ItemsService;
this.displayApps = [];
}
$onInit() {
this.itemsService
.getItems()
.success((apps) => this.filterApps(apps));
}
filterApps(siteApps) {
this.displayApps = allApps.applications.filter((app) => {
siteApps.applications.map((siteApp) => {
if(siteApp.name === app.name) {
return app;
}
})
});
}
}
export default HomeController;
我没有看到任何'$ http'叫... –
是否真正进入成功回调,尝试添加'.error((错误)=>的console.log (错误))'?你确定'getItems'确实返回一个承诺..检查控制台,以及错误 –
@DannyBuonocore $ http调用是在一个服务,这个问题没有任何关系 – erichardson30