我创建了一个新页面(扩展撇号自定义页面)并在其中创建了多个 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 请求传递的相同页面,并将一些变量分配给 View (例如“success”=> false)。
最佳答案
self.apos.app.get('foo', self.handleGetRequest);
后跟:
self.handleGetRequest = (req, res) => {
// Do some stuff
return self.sendPage(req, self.renderer('layout'), { foo: 'bar' });
}
然后,您的 layout.html
文件中就会有 {{ data.foo }}
可用。
关于javascript - ApostropeCMS - 在快速 route 渲染完整的 HTML 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55743279/