0

我需要在菜单栏项目中显示图标及其在 dijit 菜单栏中的标签。根据文档,我们可以通过在配置中指定 iconClass 属性来设置图标。以下是代码,但图标仍未显示。是道场的bug吗?

var form1 = {};

require(["dojo/ready", "dijit/MenuBar", "dijit/PopupMenuBarItem"], function (ready, MenuBar, PopupMenuBarItem) {
    ready(function () {
        form1.menu_bar = new MenuBar({}, "menu");
        form1.item1 = new PopupMenuBarItem({
            label: "Cut",
            iconClass: "dijitEditorIcon dijitEditorIconCut"
        }, "item1");
        form1.menu_bar.addChild(form1.item1);

        form1.menu_bar.startup();
    });
});

JS-FIDDLE:http: //jsfiddle.net/X2xjt/

4

2 回答 2

0

文档确实是正确的。如果您将 PopupMenuBarItem 替换为dijit/MenuItem您将看到图标在菜单项旁边按预期呈现。PopupMenuBarItem 要求popup在创建时指定属性(请参阅参考文档form1.menu_bar.startup()),这会导致在调用时引发错误。

var form1 = {};

require(["dojo/ready", "dijit/MenuBar", "dijit/MenuItem"], function (ready, MenuBar, MenuItem) {
    ready(function () {
        form1.menu_bar = new MenuBar({}, "menu");
        form1.item1 = new MenuItem({
            label: "Cut",
            iconClass: "dijitEditorIcon dijitEditorIconCut"
        }, "item1");
        form1.menu_bar.addChild(form1.item1);

        form1.menu_bar.startup();
    });
});

http://jsfiddle.net/X2xjt/2/

于 2013-09-24T13:07:26.163 回答
-1

找到了答案。用 是不可能做到这一点的dijit/PopupMenubarItem。这是原因,为什么http://dojotoolkit.org/reference-guide/1.9/dijit/MenuBar.html#icons

于 2014-08-19T23:36:53.063 回答