将URL的一部分传递给AngularJS中的自定义筛选器
Pass part of the URL to a custom filter in AngularJS
我有一个JSON数据库,我用一个控制器和ng repeat显示其中的内容。
它工作得很好。
在列表中,我有属于多个类别的项目。
我构建了一个自定义过滤器,只显示符合条件的内容。
app.filter('whichCategory', function($location){
return function(input) {
var out = [];
var path = $location.path();
var pos = path.lastIndexOf("/");
var categoryName = path.slice(-pos);
angular.forEach(input, function(items) {
if (items.category == categoryName) {
out.push(recipes);
}
})
return out;
}
});
该过滤器与静态条件甚至categoryName一起工作也很好,但在这种情况下,无论url如何,它都只显示一个类别中的元素。
你知道我错在哪里了吗?
与此同时,我做了一些调试,问题是在告诉splice从哪一侧剪切时,pos变量的实现。
我从右向左走,而不是从另一个方向走。
printf调试有帮助:D。
var categoryName = path.slice(pos+1);
因为最后一个"/"字符的位置是从左起的第11个。
我需要最后一个"/"之后的所有内容,因此+1
相关文章:
- 数据表自定义筛选
- 类别自动完成jQuery中的单词级自定义筛选器,而不是子字符串
- 想要将ng个repeat对象传递给自定义筛选函数
- 自定义筛选器不'我不使用django数据表视图创建的ajax.data.Json
- 在模型可用之前调用使用 app.filter 的自定义筛选器
- 使用select2 3.5.2中的initSelection进行自定义筛选
- "键未定义”;在AngularJS'的自定义筛选功能
- 如何通过在 Fabric JS 中传递颜色代码来创建自定义筛选器
- Angular.js 中字符串特定部分的自定义筛选器表达式
- 自定义筛选器排序方式
- AngularJs:错误:用于配对项目的自定义筛选器引发错误:“达到 10 次 $digest() 迭代.流产!
- 将带有属性的自定义筛选器传递到角度中的自定义指令
- 如何在自定义筛选器中添加多个参数
- 将重复项传递给自定义筛选器
- 将URL的一部分传递给AngularJS中的自定义筛选器
- Typescript+angularjs自定义筛选器未知提供程序:
- 按数组值进行角度自定义筛选
- 用于搜索JSON数据的自定义筛选器
- 为Kendo网格中的特定列自定义筛选消息
- $timeout或$apply在自定义筛选器中使用时导致无限循环