Как скопировать узел в переменную и использовать визит для удаления какого-либо элемента? - PullRequest
0 голосов
/ 27 июня 2018

я использую этот код

var mdata = node//.toDict(function (n) {delete n.key});

mdata.visit(function (n) {
    if(n.data.itemtype !=='folder')
        n.remove();
});

когда я удаляю элементы из mdata, которые удаляются из исходного узла

как я могу скопировать узел без каких-либо зависимостей ???

когда я использую toDict, но я не могу использовать visit для обработки элементов узла

я использую Object.assign({},node) и другие методы, но я не могу этого сделать

Мне нужно скопировать узел и вставить его в другую ветвь, но удалить некоторые элементы, прежде чем вставить его

1 Ответ

0 голосов
/ 14 июля 2018

Чтобы скопировать и изменить узел, используйте toDict:

var d = node.toDict(true, function(dict){
    delete dict.key;
    if( dict.data.foo ) {}      
    ...  
});

затем добавьте его к новой цели, например

targetNode.addChildren(d);
...