Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 有条件地禁用dijit菜单_Javascript_Dojo - Fatal编程技术网

Javascript 有条件地禁用dijit菜单

Javascript 有条件地禁用dijit菜单,javascript,dojo,Javascript,Dojo,我正在尝试添加属性disabled:true或nothing,这取决于on的值,如下所示: var on = true; pMenu.addChild(new MenuItem({ label: "Disabled menu item", if(on){ return disabled: true; } })); 这似乎在控制台中返回了一个错误“数字不

我正在尝试添加属性
disabled:true
或nothing,这取决于
on
的值,如下所示:

        var on = true;
        pMenu.addChild(new MenuItem({
          label: "Disabled menu item",
            if(on){
              return disabled: true;
            }
        }));

这似乎在控制台中返回了一个错误“数字不是函数”。

我想这应该可以:

    var on = true;
    pMenu.addChild(new MenuItem({
        label: "Disabled menu item",
        disabled: on ? true : false
    }));
如果在你的用例中,上的
实际上是一个
布尔值,你也可以把它分配给disabled,比如
disabled:on
,就是这样。但据我所知,您不能像
{}
那样在非构造函数对象声明中执行语句(如
if
-cascade)

由于默认情况下
disabled
false
,这实际上就像什么都不添加一样,但在我个人看来,它更具可读性

考虑一下:您不需要向实例添加属性,实际上您只需要为已经存在的属性设置一个值