因此,我正在使用vakata上下文菜单子菜单,并且试图创建一个包含要显示到子菜单对象中的项目的对象。当我在子菜单中调用它时,总是得到未定义而不是标签。
return {
"AddClient" : {
label: "Add Client",
action: function(itemName){
var itemName, itemDisp;
itemName = 'item';
return itemDisp = {itemName : { label: 'hello'}};
},
"submenu": {
itemDisp
}
因此,在上面我要在上下文菜单中返回“添加客户端”作为项,然后在操作中创建设置为“ item”的变量itemName
,最后返回带有以下内容的“ itemDisp”:项目对象。
在子菜单中调用itemDisp
之后。结果,这应该在上下文菜单子菜单中显示问候,但它始终显示未定义。
答案 0 :(得分:0)
您声明的itemDisp
在action
函数的变量,因此该变量的作用域确定该函数在这个函数中设置其值。如果您还全局或至少在更高的范围内声明了itemDisp
,只需在action函数中删除该变量即可。
您的代码示例非常小,不允许我测试或复制任何内容,因此很难为您提供更多帮助。
如果您需要更多的帮助,我鼓励你们加入更多内容,使一小块是重现您的问题(像codesandox,jsbin等服务)的代码