Javascript 如何在DOJO中将参数传递给自定义小部件?
我正在DOJO中创建一些自定义小部件。 我需要能够在对象初始化时覆盖小部件上的一些属性,例如:newJavascript 如何在DOJO中将参数传递给自定义小部件?,javascript,dojo,Javascript,Dojo,我正在DOJO中创建一些自定义小部件。 我需要能够在对象初始化时覆盖小部件上的一些属性,例如:new\u labelWebpart(“此处的我的值”) 知道怎么做吗 var widget2 = new _labelWebpart('my value here'); define([ "dojo/_base/declare", "dijit/_WidgetBase", "dijit/_TemplatedMixin", "d
\u labelWebpart(“此处的我的值”)代码>
知道怎么做吗
var widget2 = new _labelWebpart('my value here');
define([
"dojo/_base/declare",
"dijit/_WidgetBase",
"dijit/_TemplatedMixin",
"dojo/text!./templates/label.html",
"dojo/dom-style",
"dojo/_base/fx",
"dojo/_base/lang",
"dojo/on",
"dojo/mouse",
"require"
], function (declare, _WidgetBase, _TemplatedMixin, template, domStyle, baseFx, lang, on, mouse, require) {
return declare([_WidgetBase, _TemplatedMixin], {
label: "Default text for label", // THIS VALUE SHOULD BE OVERWRITTEN WHEN PASSING ARGUMENT IN THE COSTRUCTOR
templateString: template,
baseClass: "Label",
postCreate: function () {
var domNode = this.domNode;
this.own(
);
}
});
});
我建议查看构造函数属性:
return declare([_WidgetBase, _TemplatedMixin], {
label: "Default text for label",
templateString: template,
// other stuff of your declare here
constructor: function(override_arguments_here) {
// your init code here to override the label from your arguments
}
});
构造函数是文件中的第一个执行点。声明框架应如下所示:
返回declare(“fileNameIfHTMLIsDifferent”,[…]{
templateString:\u templateString
....
,构造函数:函数(args){
declare.safeMixin(本,args);
....
}
,后创建:函数(){
这是继承的(论点);
....
},
启动:函数(){
这是继承的(论点);
}
});代码>