我正在编写一个 Dojo 小部件,它向用户页面添加一个标签和一个输入框。
The for
的属性label
需要 HTML ID 值,但 Dojo 小部件不应包含 ID,以防在同一页面上创建多个实例。
那么,有人对如何解决这些相互冲突的需求有什么建议吗?
如果构造时配置参数不存在,则 dijit 注册表将立即设置 WidgetID (this.id):
constructor: function(args) { args=args || {};
this.id = args.id || dijit.registry.getUniqueId(this.declaredClass)
}
模板可用于字符串替换,因此如果您的类中有一个属性,例如foo,放置这个的方法into模板是这样的:
templateString = '<div class="${foo}">';
在您的情况下,模板中的某个位置有一个标签->输入对,它是这样的
<div><!--domNode-->
<table>
<td><label for="${id}-edit-title">Title</label></td>
<td><input id="${id}-edit-title" type="text" /></td>
</table>
</div>
So
尽管它暂时有点过时,但这是一个非常好的起点:http://dojotoolkit.org/documentation/tutorials/1.6/templated/
继续阅读dojo.Stateful
获取/设置机制
最后转向dijit._WidgetsInTemplateMixin
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)