我在想办法解决这个问题。
我想用这样的字符串来安装类似标签的程序。
玩具/汽车/红色
然后我想-重复做这个。
玩具
玩具/汽车
玩具/汽车/红色
如果其中一个被单击,过滤器将检查我的实体是否包含单击的字符串。
所以我的问题是,我怎样才能把这些玩具/汽车/红色变成
玩具
玩具/汽车
玩具/汽车/红色
在ng-重复显示值之前。
然后,我解决的唯一部分是在ng重复显示字符串之前删除所有重复字符串。
编辑
var uniqueTypes = [];
for(i = 0; i< firstPointFiveFilter.length; i++){
if(uniqueTypes.indexOf(firstPointFiveFilter[i].category) === -1){
uniqueTypes.push(firstPointFiveFilter[i].category);
var str = uniqueTypes + '';
arr = str.split('/'),
e = '';
var arr2 = [];
arr.forEach(function (item) {
e += item + '/';
arr2.push(e);
});
console.log(arr2);
}
}
不同的字符串是这样的,它们没有来自@DROW4P‘玩具/汽车/红色’,‘玩具/汽车/蓝色’的代码。
编辑2
谢谢你的回答@ is 4p,现在唯一缺少的就是这个。
如果我有['toys/cars/red', 'toys/cars/blue']
,那就不应该是
玩具
玩具/汽车
玩具/汽车/红色
玩具
玩具/汽车
玩具/汽车/蓝色
它应该是这样的
玩具
玩具/汽车
玩具/汽车/红色
玩具/汽车/蓝色
发布于 2015-06-18 04:52:57
您可以在ng-重复之前拆分字符串,如下所示:
var str = 'toys/cars/red',
arr = str.split('/'),
e = '';
arr2 = [];
arr.forEach(function (item) {
e += item;
arr2.push(e);
e += '/';
});
console.log(arr2);
希望这能有所帮助
编辑:
如果您有像这样的多个字符串:
function pathSplitter(arr) {
var e = '',
arr2 = [];
if (!arr.length) {
return 'Please make sure you pass an array in this function.';
}
arr.forEach(function (item) {
e += item;
arr2.push(e);
e += '/';
});
return arr2;
}
var str = 'chair/fabric/black,chair/fabric/grey',
arr = str.split(',');
arr.forEach(function (item) {
var subItemArr = item.split('/');
// DO STUFF OR JUST PRINT IT
console.log(pathSplitter(subItemArr));
});
编辑3:
使用堆栈溢出编辑器很痛苦,所以我创建了一个jsbin - http://jsbin.com/hawoqinufi/edit?html,js,output。
编辑4:
这个怎么样:http://jsbin.com/zozesodiqa/edit?html,js,console,output
https://stackoverflow.com/questions/30915387
复制