Javascript 如何在Dojo小部件的另一个模板中包含模板?
我已尝试使用以下模板模型进行此操作:Javascript 如何在Dojo小部件的另一个模板中包含模板?,javascript,templates,dojo,Javascript,Templates,Dojo,我已尝试使用以下模板模型进行此操作: <div> <div data-dojo-attach-point="includeHere"</div> </div> 我检查了_templatedmixinsource并尝试按照_TemplatedMixin的方式更改buildRendering函数: buildRendering: function() { domConstruct.toDom(templateToBeIncluded, th
<div>
<div data-dojo-attach-point="includeHere"</div>
</div>
我检查了_templatedmixinsource并尝试按照_TemplatedMixin的方式更改buildRendering函数:
buildRendering: function() {
domConstruct.toDom(templateToBeIncluded, this.includeHere);
},
但是lso无法让它工作。正确的方法是什么?我不想在.js文件中包含HTML。我希望HTML只包含在模板中。我解决了这个问题。首先,当我简单介绍这一点时;在buildRendering方法中,它工作了,但是HTML没有呈现。它在页面中显示为原始HTML。因此,我尝试将模板中的变量更改为${!includeHere。一旦我这样做,HTML就会正确呈现 但子模板中的替换变量仍然存在问题,因此我将buildRendering方法更改为:
buildRendering: function() {
this.includeHere = string.substitute(templateToBeIncluded, this, (v) => v);
this.inherited(arguments);
},
这一切都很好。你为什么需要这个?你需要在另一个小部件中包含一个小部件吗?可能会有所帮助吗?嗯……我还是从Dojo开始。也许我没有掌握Dojo的做事方式。但实际上我不需要小部件中的小部件……我只需要一个子模板。但仔细想想,这几乎是最好的你觉得我应该把子模板转换成小部件吗?
buildRendering: function() {
domConstruct.toDom(templateToBeIncluded, this.includeHere);
},
buildRendering: function() {
this.includeHere = string.substitute(templateToBeIncluded, this, (v) => v);
this.inherited(arguments);
},