Sails.js SyntaxError: await действителен только в асинхронной функции - PullRequest
0 голосов
/ 15 октября 2019

Я очень новичок в Sails.js, но клиент хочет, чтобы я создал главный контроллер, который вызывает все вспомогательные функции. Вот пример:

result = await sails.helpers.user.action(action, req, result);
module.exports = {


  friendlyName: 'User Action',


  description: 'User Action tile.',


  inputs: {
    action: {
        description: 'action of grid',
        required: true,
        type: "string",
      },
      req: {
          description: 'req object posted',
          required: true,
          type: "ref",
      },
      result: {
          description: 'req object posted',
          type: "ref",
          defaultsTo: {},
      },
  },


  exits: {

    success: {
      description: 'All done.',
    },

  },


  fn: async function (inputs) {
    var action = inputs.action;
    var req = inputs.req;
    var result = inputs.result;
    var post = inputs.req;
    user_id = req.me ? req.me.user_id : 0;

Когда я запускаю код, я получаю ошибку, упомянутую в заголовке. Как я могу исправить эту ошибку?

1 Ответ

0 голосов
/ 16 октября 2019

Эта ошибка относится к: Ваша функция должна быть асинхронной функцией, чтобы использовать 'wait', просто поместите ключевое слово async перед определением функции, вот так.

    async function doSomething() {
        result = await sails.helpers.user.action(action, req, result);
    }
...