0
角のあるUIツリー内のノードをすべての子ノードで複製する方法はありますか?Angular UIツリーでノードを複製する方法は?
は今、私はイベントのクリックを使用します。
$scope.newSubItem = function (scope) {
var nodeData = scope.$modelValue;
var arrr_nodes = [];
angular.forEach(nodeData.nodes, function (value) {
arrr_nodes.push(arrr_nodes);
});
var total_nodes = nodeData.nodes.length;
var prefix_increment = total_nodes + 1;
nodeData.nodes.push({
id: nodeData.id + prefix_increment,
prefix: nodeData.prefix + "_" + prefix_increment,
title: nodeData.title + '.' + (nodeData.nodes.length + 1),
value: nodeData.value,
type: nodeData.type,
nodes: arrr_nodes
});
};
私は新しいnodes: nodes: arrr_nodes
にクローン化されたオブジェクトからすべての子を挿入しようと、それはエラーの多くを与え、木を壊し:newSubItem
が関数であるng-click="newSubItem(this)"
。
https://docs.angularjs.org/api/ng/function/angular.copy –
あなたは私を説明することができ、なぜ例の入力フィールドは機能していますが、私はそうではありませんか? – Oleg
Angular.copyはオブジェクトの深いクローンを作成します。元のarr_nodesへの参照をコピーするだけです。 –