Javascript Dojo Menu.bindDomNode()不是函数

Javascript Dojo Menu.bindDomNode()不是函数,javascript,jquery,html,debugging,dojo,Javascript,Jquery,Html,Debugging,Dojo,我正在编写一个简单的dojo菜单,并尝试将其附加到Dijit.Tree节点,该节点受单击处理程序的约束。有人能帮忙吗?我得到了一个错误: >未捕获类型错误:nodectrolmenu.bindDomNode不是函数(匿名函数) 对bindDomNode的调用是多余的-有效地指定targetNodeIds 然而,这并不能解释为什么您的代码声称bindDomNode不是一个函数,因为它肯定是在dijit/Menu的原型上定义的。如果没有给出进一步的上下文,我会怀疑您可能有一些不匹配的依赖项和工厂函数

我正在编写一个简单的dojo菜单,并尝试将其附加到Dijit.Tree节点,该节点受单击处理程序的约束。有人能帮忙吗?我得到了一个错误:

>未捕获类型错误:nodectrolmenu.bindDomNode不是函数(匿名函数)


bindDomNode
的调用是多余的-有效地指定
targetNodeIds


然而,这并不能解释为什么您的代码声称
bindDomNode
不是一个函数,因为它肯定是在
dijit/Menu
的原型上定义的。如果没有给出进一步的上下文,我会怀疑您可能有一些不匹配的依赖项和工厂函数参数名称?

您对
bindDomNode
的调用是多余的-有效地指定
targetNodeIds


然而,这并不能解释为什么您的代码声称
bindDomNode
不是一个函数,因为它肯定是在
dijit/Menu
的原型上定义的。如果没有给出进一步的上下文,我怀疑您可能有一些不匹配的依赖项和工厂函数参数名称?

您使用的是什么版本的dojo?看起来我用的是最新的。代码看起来是这样的,因为我找不到太多的教程或书籍,所以我一直过着零零碎碎的生活。真遗憾,我知道。我认为这个api可能太旧了。对不起,你能给我指一下最近的版本吗?如果你使用最新版本的dojo,也就是1.10,你应该使用strikt。不推荐使用dojo.connect,您应该改用“dojo/on”。然后,您的代码如下所示:在(树上,“单击”,函数(..){};您使用的是什么版本的dojo?看起来我用的是最新的。代码看起来是这样的,因为我找不到太多的教程或书籍,所以我一直过着零零碎碎的生活。真遗憾,我知道。我认为这个api可能太旧了。对不起,你能给我指一下最近的版本吗?如果你使用最新版本的dojo,也就是1.10,你应该使用strikt。不推荐使用dojo.connect,您应该改用“dojo/on”。然后,您的代码如下所示:在(树上,“单击”,函数(..){};
dojo.connect(tree, 'onClick', function(item, node, event){

    var addNodeMenuItem = new MenuItem({
        label : "Add Node"
    });
    var removeNodeMenuItem = new MenuItem({
        label : "Remove Node"
    });

    var nodeControlMenu = new Menu({
        targetNodeIds : [node]
    });


    nodeControlMenu.addChild(addNodeMenuItem);
    nodeControlMenu.addChild(removeNodeMenuItem);
    nodeControlMenu.bindDomNode(node);
});