Swappable Templates
A simple demo of how one might set up a widget that uses different templates
by brianarn
HTML
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/dojo/1.6/dojo/resources/dojo.css">
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/dojo/1.6/dijit/themes/claro/claro.css">
<div id="container"></div>
JavaScript
dojo.require("dijit._Widget");
dojo.require("dijit._Templated");
dojo.ready(function(){
dojo.declare("MyWidget", [dijit._Widget, dijit._Templated], {
templateString: "<div>Foo</div>",
postMixInProperties: function(){
if (this.useBar) {
this.templateString = "<div>Bar</div>";
}
}
});
var container = dojo.byId('container');
var foo = new MyWidget({}).placeAt(container);
var bar = new MyWidget({useBar: true}).placeAt(container);
});