node.js - 如何使用 exits 和 actions2 在sails 1.0 中设置动态viewTemplatePath?
问题描述
我正在尝试创建一个基于 url 传递的参数动态加载视图的操作
下面是我的routes.js
'GET faq/:alias': {actions:'faq'}
在我的faq
行动中
module.exports = {
friendlyName: 'FAQ Pages',
inputs: {
alias: {
description: 'the page url',
type: 'string'
}
},
exits: {
success: {
statusCode: 200,
},
notFound: {
responseType: 'notFound',
}
},
fn: async function(inputs, exits) {
console.log('static', inputs.alias);
//something like this - set view tempalatePath
//exits.success.viewTemplatePath = 'faqs/' + inputs.alias;
//load view if exist else throw notFound
return exits.success();
}
};
我所有的常见问题解答都在一个文件夹中,我将检查物理文件是否存在require('fs').existsSync()
,然后加载加载它
解决方案
在您使用的 action2 格式中,您必须使用throw
路由到备用出口。看:
https://sailsjs.com/documentation/concepts/actions-and-controllers
不要被这里的文档混淆:
https://sailsjs.com/documentation/reference/response-res/res-view
...我不知道它适用于什么,但它不适用于 1.0 中的 action2。
推荐阅读
- node.js - 在我的测试用例中,我的 console.log 没有输出
- amazon-web-services - Flink - AWS 上的外部检查点
- r - 在 ggplot 中突出显示我的一个折线图
- sql - SQL 正则表达式 substr 模式匹配
- python - 将“in”成员资格分配给变量?
- python - 用 pyarrow 将大熊猫数据框写成镶木地板
- for-loop - 如何使用 Bat 文件在目录中的每个文件夹中创建 txt 文件?
- cadence-workflow - 如何在节奏工作流活动中存储当前光标位置
- javascript - hAxis viewWindow 和 ticks 返回一个错误的图形,但 vAxis 运行良好
- python - Python中的短导入路径