添加节点的图标按钮在每个节点后面,添加节点时会自动触发当前节点点击事件getNodeData(),出现清空的form表单后马上自动跳转到被点击节点的信息页面,无法跳转到新建form表单,新建节点信息。
<el-button icon=“el-icon-circle-plus” size=“mini” @click="() => addChildNode()" ***@click.stop=“getNodeData()”***>阻止事件冒泡
需求是:上面有可以添加节点的按钮,每个节点后也有可以添加节点的按钮
节点点击事件
getNodeData(data, obj, node) {
this.menuSort = data;
this.treeNode = obj.childNodes;
getObj(data.id).then(response => {
this.form = response.data.data; //被点击节点的信息
});
this.currentId = data.id;
this.showElement = true;
},
添加节点按钮在每个节点后面
//可以将addChildNode添加事件直接写成handlerAdd,两个添加节点事件写一个就行,添加在节点后的事件用阻止冒泡
addChildNode(data) {
this.handlerAdd();
},
添加节点按钮在上面(选中父节点后添加节点)
handlerAdd() {
this.resetForm();
//获取被点击节点的子节点
let count = parseInt(this.form.parentId);
for (let i = 1; i <= this.treeNode.length + 1; i++) {
this.form.menuId = count + i;
}
this.formStatus = "create";
this.formEdit = false;
},