我創建了一個基於widget模板的一部分等,道場只更新模板
<div class="content">
<div>
<!-- rest of content-->
</div>
<div class="col-md-6">
<div class="panel" data-dojo-attach-point="sysinfo">
<ul class="col-md-12 stats">
<li class="stat col-md-3 col-sm-3 col-xs-6">Host:</br> <span><b class="value">{{hname}}</b></span>
</li>
<li class="stat col-md-3 col-sm-3 col-xs-6"># CPU:</br> <span><b class="value">{{cpu}}</b></span>
</li>
</ul>
</div>
</div>
</div>
如何更新SYSINFO的唯一內容?
到現在我在做什麼,
var widget = this;
widget.template = new dtl.Template(widget.templateString);
var template = widget.template;
template.update(node, stats); // but it update complete content as node == content. I just want to refresh sysinfo.
我也試過,
template.update(this.sysinfo, stats); // but it throws exceptions
任何想法?
你的widget的代碼中,你需要設置一個設置功能,參見[這裏](http://dojotoolkit.org/documentation/tutorials/1.9/recipes/custom_widget /),然後使用setter函數更新sysinfo內容。 sysinfo將作爲您的窗口代碼中的變量提供。在你的setter函數中,你可以使用像'_setSysinfo:function(argument){sysinfo.innerHtml = argument}'這樣的東西。 setter函數將被調用,例如'widget.Sysinfo(stats);' – frank
@frank我們不能'template.update(node,context)' –
該模板只有在解析器解析後纔可用。解析器將模板轉換爲DOM節點。沒有更新模板的更新方法。附加點屬性允許您指定解析器在創建widget時創建的變量的名稱,該名稱可用於manupilation。你有沒有看過之前評論中提供的鏈接? – frank