通过 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()