是否可以以编程方式编写视图而不是使用html模板?我见过的所有演示都使用了html模板。
答案 0 :(得分:0)
是的,这是可能的。
将HTML标记添加为属性templateString
的字符串,
以下代码不使用.html模板作为您的问题。
您可以使用字符串连接以编程方式修改模板。
有关templateString here的更多信息。
require(['dijit/_WidgetBase', 'dijit/_TemplatedMixin', 'dojo/_base/declare', 'dojo/domReady!'], function(_WidgetBase, _TemplatedMixin, declare, domReady) {
//Foo represent any widget with template available in dojo
//replace by the widget you want to use
var Foo = declare([_WidgetBase, _TemplatedMixin], {});
var foo = new Foo({
templateString: '<div>This is my teemplate and ${bar}</div>',
bar: "this is added to the template"
});
foo.placeAt('layout');
});
<link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/dojo/1.10.4/dijit/themes/claro/claro.css" media="screen">
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.10.4/dojo/dojo.js"></script>
<div id="layout"></div>
答案 1 :(得分:0)
您还可以在HTML模板中使用占位符,该模板在模板中定义了基本标记结构,并为JS方面的占位符提供了值。
例如:
1/3
OR
您也可以从“postMixInProperties()”
动态修改某些HTML模板请参阅窗口小部件生命周期以获取有关该信息的一些信息 http://dojotoolkit.org/reference-guide/1.10/dijit/_WidgetBase.html