我試過你的問題。這是我的方法,
排序數組,以便我們將按順序獲取文件夾結構。
循環遍歷數組,同時檢查前一個元素是否包含在當前元素中。
如果找到該元素,則添加填充。
請檢查我的Plunkr是否爲我的方法的GIST。這只是一個基本的例子,它可以在單個層面上工作,但您需要調整此功能以使其在多層面上工作。
Plunkr Demo
JS:
vm.getid = function(){
$http({
method: 'GET',
url: 'api.json',
})
.then(function successCallback(data) {
var data = data.data;
data.sort();
var prev = 0;
angular.forEach(data, function(val, index){
var padding = '0px';
var skip = true;
var repl = "";
console.log(val);
console.log(prev);
console.log(val.indexOf(prev)>-1);
if(val.indexOf(prev)>-1 && index !== 0){
padding = '20px';
data[index] = {padding: padding, value: val.replace(prev, "")};
skip = false;
}else{
data[index] = {padding: '0px', value: val};
}
if(skip){
prev = data[index].value;
}
});
$scope.id = data;
console.log(data);
}, function errorCallback(response) {
console.log(response);
console.log('error');
});
};
HTML:
<li ng-repeat="i in id">
<a ng-style="{ 'padding-left' : i.padding}" ng-click="Paths(i)" style="cursor:pointer;" class="left-menu-link">
{{i.value}}
</a>
</li>
什麼是你的問題? –
@WilliamHampshire我想看看這樣的東西:(在問題的頂部) – bafix2203
而不是:/ big_big_package /門/冷卻器 /門/椅子 /門 – bafix2203