IBM的Dojo和iWidgets:
所以我的iWidget代码如下:
onEdit : function() {
dojo.require(["dijit/Dialog", "dojo/dom"], function(Dialog, dom){
var node = dom.byId("makeADialog");
var myDialog = new Dialog({ title:"From Source Node" }, node);
myDialog.show();
});
},
当我运行时 - chrome浏览器控制台显示:
com.ibm.mm.iwidget.widget.IWidgetWrapperExtendedImpl IWidgetWrapper._handleEventInternal: widget: testWidget, eventName: onedit, HandleEventException: TypeError: Object [object Array] has no method 'split'
怎么了?
答案 0 :(得分:0)
正如评论中所提到的,问题在于你的语法。由于您使用的是包含模块(dojo.require()
)的旧方法,这也意味着您必须使用旧语法,而不是新语法。
这意味着您应该编写如下代码:
onEdit : function() {
var Dialog = dojo.require("dijit.Dialog");
var node = dojo.byId("makeADialog");
var myDialog = new Dialog({
title: "From Source Node"
}, node);
myDialog.show();
},