ApostropheCMS-以快速路线呈现完整的HTML页面

时间:2019-04-18 09:40:52

标签: javascript node.js apostrophe-cms

我创建了一个新页面(扩展了撇号自定义页面),并在其中创建了多个POST路由。它们的命名与其他常规页面完全一样,并且仅应处理POST请求。

此代码可以很好地工作并呈现空白布局:

module.exports = {
    extend: 'apostrophe-custom-pages',
    afterConstruct: function (self) {
        self.apos.app.post('/xyz', self.handlePostRequest);
    },
    construct: function (self, options) {
        self.handlePostRequest = (req, res) => {
            // Do some stuff

            return self.sendPage(req, self.renderer('layout'), () => ({
                'success': false
            }));
        }
    }
};

现在,我想简单地渲染与GET请求提供的页面相同的页面,并为该页面分配一些变量(例如,“成功” => false)。

1 个答案:

答案 0 :(得分:1)

self.apos.app.get('foo', self.handleGetRequest);

其次:

self.handleGetRequest = (req, res) => {
  // Do some stuff
  return self.sendPage(req, self.renderer('layout'), { foo: 'bar' });
}

然后,您的{{ data.foo }}文件中将提供layout.html