0
我试图重构我的角度应用程序。因此我介绍了一个包含工厂服务的service.js文件。该代码是这样的:angularjs从工厂返回数组
app.factory('Categorien', function() {
var Categorien = {
populate: function() {
var _categorien = [];
var bedragok = (function bedragOk(categorie) {
return categorie.bedragAf > 0;
});
var categorienFilter = $scope.categorien.filter(bedragok);
categorienFilter.forEach(function(item) {
var dataArray = [];
dataArray.push(item.omschrijving);
dataArray.push(item.bedragAf);
_categorien.push(dataArray);
});
return _categorien;
}
};
return Categorien;
});
和Controller我称这种由:
$scope.dataTable = Categorien.populate();
所以DataTable中预计的阵列功能填入应返回的。
我做错了什么,所以我希望你能帮助我。
谢谢!
你函数'bedragok' FN应该是'VAR bedragok =功能bedragOk( categorie){ return categorie.bedragAf> 0; };' –
Angular中的工厂/服务与控制器的“$ scope”没有关联。你这样做时应该会出错:'var categorienFilter = $ scope.categorien.filter(bedragok);'b/c $ scope是未定义的。你没有真正描述你的问题中没有什么工作。 –
在angularjs工厂和服务是单身服务。但是'$ scope' - 范围可以有多个实例。因此,你不应该在任何服务/工厂中包含'$ scope'。有关更多详细信息,请参阅“https://docs.angularjs.org/guide/services” - AngularJS文档。 – Aviro