实例化后访问树事件

时间:2019-07-30 14:16:58

标签: javascript fancytree

我有一个实例化树的父视图,其他几个视图也从该视图扩展。

在这些不同的子视图中,会有不同的树行为,但是对于所有它们而言,很多行为都是相同的,例如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
                }
            });
        });

0 个答案:

没有答案