使用纯Javascript从网址生成Treeview

依地那尼

我正在以如下数组的形式获取文件的网址

在此处输入图片说明

我想要实现这样的目标

var mainObj = [
{
    name: "Home",
    files: ["excel doc 1.xlsx", "excel doc 2.xlsx"],
    folders: [{
        name: "Procedure",
        files: ["excel doc 2.xlsx"],
        folders: []
    }],
},
{
    name: "BusinessUnits",
    files: [],
    folders:[
        {
            name:"Administration",
            files:[],
            folders:[{
                name: "AlKhorDocument",
                files: [],
                folders:[
                    {
                        name: "Album1",
                        files: [],
                        folders:[......]
                    }
                ]
            }]
        }
    ]
}

]

.......请告诉我您是否可以提供帮助。

顺便说一下,我想实现以下目标

在此处输入图片说明

如果您可以提出更好的建议,那对我有帮助。

妮娜·斯科茨(Nina Scholz)

通过仅包含字符串的路径部分,可以通过减少文件夹结构来减少数组,并将最终文件添加到文件夹结构中。

var data = ['Home/excel doc 1.xlsx', 'Home/excel doc 2.xlsx', 'Home/Procedure/excel doc', 'Home/Procedure/2.xlsx', 'BusinessUnits/Administration/AlKhorDocument/Album1/text.txt'],
    result = data.reduce((r, p) => {
        var path = p.split('/'),
            file = path.pop(),
            final = path.reduce((o, name) => {
                var temp = (o.folders = o.folders || []).find(q => q.name === name);
                if (!temp) o.folders.push(temp = { name });
                return temp;
            }, r);

        (final.files = final.files || []).push(file);
        return r;
    }, {});

console.log(result);
.as-console-wrapper { max-height: 100% !important; top: 0; }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用AngularJS生成纯HTML

来自分类Dev

当用户使用纯Javascript按下文本时,更改网址链接的一部分

来自分类Dev

Laravel使用参数生成网址

来自分类Dev

如何使用纯JavaScript定位DOM中动态生成的非唯一元素?

来自分类Dev

仅使用纯 javascript 动态生成表单输入文件在单击按钮时递增和递减

来自分类Dev

使用纯JavaScript代替coffeeScript

来自分类Dev

使用纯JavaScript解析JSON

来自分类Dev

使用纯JavaScript的XHR调用

来自分类Dev

对Javascript对象使用纯函数

来自分类Dev

使用纯Javascript提交表单

来自分类Dev

使用纯 JavaScript 触发添加

来自分类Dev

使用纯SQL生成结果表

来自分类Dev

如何使用纯CSS或纯JavaScript从底部滑动div

来自分类Dev

使用viewset生成/ users / me网址

来自分类Dev

如何使用纯JavaScript处理事件?

来自分类Dev

如何使用纯JavaScript产生fadeOut效果

来自分类Dev

使用POST纯JavaScript发送JSON对象

来自分类Dev

如何使用Maven创建纯JavaScript项目?

来自分类Dev

使用纯JavaScript获取数组的重复项

来自分类Dev

如何在nuxtjs中使用纯JavaScript?

来自分类Dev

使用纯JavaScript制作吐司动画

来自分类Dev

在纯JavaScript中使用express传递的数组

来自分类Dev

如何使用纯JavaScript选择<html>元素?

来自分类Dev

使用纯JavaScript构建进度栏

来自分类Dev

使用javascript触发纯CSS模式

来自分类Dev

使用POST纯JavaScript发送JSON对象

来自分类Dev

使用纯Javascript进行按钮文本转换

来自分类Dev

如何使用纯Javascript使此按钮行为?

来自分类Dev

使用纯 JavaScript 加载外部 JSON 数据