我有一个实例化树的父视图,其他几个视图也从该视图扩展。
在这些不同的子视图中,会有不同的树行为,但是对于所有它们而言,很多行为都是相同的,例如contextMenu,一些自定义设置等。
已经尝试创建视图并将其存储在变量中,以供其他视图接收该实例。
var tree = $("#tree").fancytree({
extensions: ['contextMenu', 'filter','persist'],
quicksearch: true,
checkbox: false,
selectMode: 3,
----
)}
和其他视图
tree({
beforeActivate: function (event, data) {
// habilitar o botão de clonar somente em nó pai.
if (data.node.isFolder()) {
$("#clonar").prop("disabled", false).val(data.node.data.id);
$("#ficha").prop("disabled", false);
return true;
} else {
$("#clonar").prop("disabled", true);
$("#ficha").prop("disabled", true).val('');
}
},
})
我总是得到类似的东西:
未捕获的TypeError:树不是函数
我在想的是:从特定的角度来看,事件
renderNode: function (event, data) {}
将做某件事,在另一种观点下这可能会改变。
在激活,激活等之前也是如此。
已解决
我不知道为什么以前没有try this,但这很简单:
$(document).ready(function () {
$("#tree").fancytree({
beforeActivate: function (event, data) {
code
} else {
code
}
},
activate: function (event, data) {
code
},
renderNode:function (event,data) {
code
}
});
});