通过 ajax 和符号-view.js 加载模板
Load template via ajax with ampersand-view.js
晚上都
我正在玩 & 符号。
使用 &-cli 演示项目。
如何通过 ajax 加载模板,例如在信息页面上
module.exports = PageView.extend({
pageTitle: 'more info',
template: function() {
return 'my super markup via ajax;
},
});
至少有几种方法可以实现这一点。第一个是扩展 render
函数:
module.exports = PageView.extend({
pageTitle: 'more info',
render: function(){
var self = this;
doYourAjaxCall(function(template){//assuming your ajax call returns a string template
self.renderWithTemplate(self, template);
})
}
});
另一种方法是像这样定义 initialize
:
initialize: function(template){
this.template = template
}
然后您通过 ajax 加载您的 templateString
,然后像这样实例化您的视图:
var view = new YourView(templateString)
您也可以手动将 template
分配给实例化的 view
,然后 render
它:
var view = new YourView()
view.template = templateString
view.render()
晚上都
我正在玩 & 符号。
使用 &-cli 演示项目。
如何通过 ajax 加载模板,例如在信息页面上
module.exports = PageView.extend({
pageTitle: 'more info',
template: function() {
return 'my super markup via ajax;
},
});
至少有几种方法可以实现这一点。第一个是扩展 render
函数:
module.exports = PageView.extend({
pageTitle: 'more info',
render: function(){
var self = this;
doYourAjaxCall(function(template){//assuming your ajax call returns a string template
self.renderWithTemplate(self, template);
})
}
});
另一种方法是像这样定义 initialize
:
initialize: function(template){
this.template = template
}
然后您通过 ajax 加载您的 templateString
,然后像这样实例化您的视图:
var view = new YourView(templateString)
您也可以手动将 template
分配给实例化的 view
,然后 render
它:
var view = new YourView()
view.template = templateString
view.render()