在我的主干应用程序中,我有一个需要使用不同模板呈现的视图,这取决于传递给视图的变量。我正在使用 require js 并想知道是否有这样做的聪明方法。
以下是我将如何调用实例化新视图:
var templateType = 'Template1'
var view = new DetailView({model:thisModel, 'templateType': templateType});
以下是视图示例:
define(['backbone',
'text!templates/template1.html',
'text!templates/template2.html' ],
function(Backbone,
Template1,
Template2){
var DetailView = Backbone.View.extend({
tagName : 'li',
className: 'detail-tag',
initialize : function(){
this.detailTemplate = _.template( this.options.templateType );
this.render();
},
这并没有给我所需的结果。如何使用选项值链接到 require 变量 - Template1?我意识到我可能可以设置一个 switch 语句或其他东西,但这似乎有点混乱。有没有更简洁的方法?
谢谢