0

在 apostrophe-templates 模块的这一中,它声明 jquery get 调用将设置req.xhr并且因此refreshLayout.html将使用模板,这意味着您不会获得整个页面。

然而,这似乎是限制性的,我们需要一种方法来覆盖它,因为如果我实际上只是想要整个页面用于动画目的,或者使用 jquery 进行爬行,该怎么办?

4

1 回答 1

1

如您所知,我是 P'unk Avenue 的 Apostrophe 的首席开发人员。

更改 AJAX 行为很容易。只需在任何模块中使用pageBeforeSend处理程序来设置属性,req.data然后在您refreshLayout.htmlextend.

// in any module
self.pageBeforeSend = function(req) {
  req.data.ajaxLayout = 'modulename:layoutname.html';
};

// in your refreshLayout.html
{% extend data.ajaxLayout %}

这与允许您的页面模板或内部布局扩展外部布局或 ajax 布局的技术相同。

于 2016-12-17T22:31:52.613 回答