gpt4 book ai didi

sails.js - sails helper 和机器规范

转载 作者:行者123 更新时间:2023-12-01 04:41:46 26 4
gpt4 key购买 nike

我将sails 升级到@^1.0.0 版本,在开发API 时,我想使用Service,但Sails 文档建议现在使用Helper。而且我并没有真正习惯于使用新的方法来识别助手、构建脚本或 Action 。

我疯狂的所有尝试都没有成功。

在下面的例子中..

这是我的 Controller 调用:

    var ob = await ails.helpers.testy('sayHello');

res.json({ob:ob});

helper

模块.exports = {
friendlyName: 'Testy',


description: 'Testy something.',


inputs: {

bla: {
type: 'string'
}

},


exits: {

success: {

}

},


fn: async function (inputs, exits) {

console.log({blabla:inputs.bla})

if(!inputs.bla) return exits.error(new Error('text not found'));

var h = "Hello "+ inputs.bla;

// All done.
return exits.success(h);

}

};

我收到此错误
error: A hook (`helpers`) failed to load!
error:
error: Attempted to `require('*-serv\api\helpers\testy.js')`, but an error occurred:
--
D:\*-serv\api\helpers\testy.js:28
fn: async function (inputs, exits) {
^^^^^^^^
SyntaxError: Unexpected token function.......

如果我从 Controller 中删除“async”和“await”,ob 对象返回 null,我遇到了这个错误
WARNING: A function that was initially called over 15 seconds
ago has still not actually been executed. Any chance the
source code is missing an "await"?

To assist you in hunting this down, here is a stack trace:
```
at Object.signup [as auth/signup] (D:\*-serv\api\controllers\AuthController.js:106:26)

最佳答案

评论中的第一个人是对的。

fn: async function (inputs, exists) {}; 中删除异步后您需要设置 sync: true默认情况下为假。描述at helpers doc page同步助手 部分。

所以你的代码应该是这样的

module.exports = {


friendlyName: 'Testy',


description: 'Testy something.',


sync: true, // Here is essential part


inputs: {

bla: {
type: 'string'
}

},


exits: {

success: {

}

},


fn: function (inputs, exits) {

console.log({blabla:inputs.bla})

if(!inputs.bla) return exits.error(new Error('text not found'));

var h = "Hello "+ inputs.bla;

// All done.
return exits.success(h);

}


};

另一方面,您对 有问题。异步/等待 .最重要的原因是
  • 不支持 Node.js 版本 - 检查您当前的版本是否支持它
  • 如果您使用 sails-hook-babel或其他与 Babel 相关的解决方案,您可能会错过异步/等待处理所需的插件
  • 关于sails.js - sails helper 和机器规范,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49703488/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com