版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33189908/article/details/81942764
一个 setting 参数被多棵树使用
若setting参数中某个回调函数用的不是同一个回调函数,可以通过回调函数传入的treeId参数进行判断,决定哪棵树加载哪种回调函数;
举个栗子:这是setting配置被两个树引用,这个两个棵树的配置除了showRemoveBtn: setRemoveComment,这个配置上略有不同,其他是一样的,所以此时可以通过setRemoveComment()回调函数的treeId来判断哪棵树需要哪种方法,
setting_logicComm = {
data: {
keep: {
leaf: true,
parent: true
},
simpleData: {
enable: true
}
},
view: {
showLine: false,
selectedMulti: false,
removeHoverDom: removeIcon, //鼠标移除,隐藏自定义控件
addHoverDom: addkeyComm, //自定义添加按钮
},
edit: {
enable: true,
drag: {
isCopy: false,
isMove: false
},
renameTitle: "编辑表达式",
removeTitle: "删除表达式",
showRenameBtn: setkeyComm, //是否显示编辑按钮
showRemoveBtn: setRemoveComment, //是否显示删除按钮(鼠标移入触发)
},
callback: { //事件触发后回调
beforeEditName:EditkeyComm, //编辑名字之前(鼠标点击编辑按钮之后)的回调函数
beforeRemove: logickeyComm, //删除按钮之前(鼠标点击删除按钮之后)的回调函数
},
};
//是否显示删除按钮
function setRemoveComment(treeId, treeNode) {
if(treeNode.isParent){
switch(treeId){
case "count_tree": // ztree树的id ,判断是不是id为 count_tree的树
if(andOrHideCount == "2"){ //andOrHideCount 该参数是我用来判断在我的代码里是否显示删除按钮的标准;
return false;
}
break;
case "keyWord_tree":
if(andOrHidekeyWord == "2"){//同上
return false;
}
break;
case "logic_tree":
if(andOrHidelogic == "2"){//同上
return false;
}
break;
default:
return true;
break;
}
return true;
}else{
return true;
}
}
若小伙伴们,在学习ztree过程中,遇到了其他问题,欢迎一起讨论哦!