据我所知,我有一个看起来很好的dijit,但每次都会提升Uncaught Error: Invalid template
。我一直无法弄明白为什么。所有变量(例如${variableName}
都在窗口小部件中正确定义。
这是小部件:
<div class="${classPrefix}-wrapper">
<div class="${classPrefix} flair" dojoAttachPoint="flairNode"></div>
<div class="${classPrefix}-count hidden" dojoAttachPoint="countWrapperNode">
<div class="count" dojoAttachPoint="countNode">0</div>
</div>
<div class="${classPrefix} ${secondaryClass} action hidden" dojoAttachPoint="secondaryClickNode" dojoAttachEvent="onclick:_onSecondaryClick">
<div class="${classPrefix}-inner"></div>
<div class="${classPrefix}-icon"></div>
</div>
<div class="${classPrefix} ${primaryClass} action" dojoAttachPoint="primaryClickNode" dojoAttachEvent="onclick:_onPrimaryClick">
<div class="${classPrefix}-inner"></div>
<div class="${classPrefix}-icon"></div>
</div>
<div class="${classPrefix}-message hidden" dojoAttachPoint="messageNode"></div>
</div>
<div class="${actionPromptNodeClass}" dojoAttachPoint="actionPromptMessageNode">
<span dojoAttachPoint="actionPromptMessage">${actionPromptText}</span>
<span dojoAttachPoint="actionCompletedMessage" class="hidden">${actionCompletedText</span>
</div>
答案 0 :(得分:7)
找到我的问题的答案。事实证明,Dijit中只能有一个根节点。我在文档but it is at the bottom of this tutorial中错过了这个:
常见陷阱
- 确保模板中只有一个根节点
- 不要使用注释开始或结束模板,因为这意味着您在技术上有两个节点
- 避免在模板末尾追踪
</div>
答案 1 :(得分:1)
模板中可能只有一个根元素。将您的模板包装到<div></div>
,它应该可以使用。