【发布时间】:2015-04-10 06:33:12
【问题描述】:
我的问题是我使用带有 2 个控制器的工厂,第一个返回给我一个完整的数组,第二个想要返回一个项目,这是基于过滤表达式的。我从 url 中获取最后两个参数,遍历数组并检查哪个数组项具有特定属性的值,然后只返回该元素及其所有属性和值。到目前为止没有问题,但是如果我想在工厂内部声明数组本身的返回树中过滤,如何在 Angular 中做到这一点? 如需帮助,我附上 jsfiddle 链接,您可以在 html 部分找到一些解释: https://jsfiddle.net/65224mk6/
如果你不想查看链接,这里是我的工厂和控制器。
portApp.factory("workFactory", function() {
var selected = [];
var works = [
{
Title: "Sprite",
subTitle: "",
Link: "sprite",
Thumbnail: "img/portfolio02.png",
Image: "img/ismont.png"
},
{
Title: "Pepsi",
subTitle: "Kristályvíz",
Link: "pepsi",
Thumbnail: "img/portfolio03.png",
Image: "img/sanofimont.png"
}
];
return {
list: function() {
return works;
},
selected: function() {
return works[0]; // probably selected[]
}
};
});
portApp.controller("listController", ["$scope", "workFactory",
function($scope, workFactory) {
$scope.allWorks = workFactory.list();
}
]);
portApp.controller("itemController", ["$scope", "workFactory", "$stateParams",
function($scope, workFactory, $stateParams) {
var detPath = $stateParams.itemLink;
//$scope.selectedWork = workFactory.selected(detPath);
}
]);
【问题讨论】:
标签: javascript arrays angularjs