【问题标题】:NodeJS: Async / Await Raspberry PiNodeJS:异步/等待树莓派
【发布时间】:2017-09-02 00:15:44
【问题描述】:

我有一些代码可以在我的日常计算机上完美运行,但在尝试从树莓派(3 型号 B)启动时出现错误。错误如下:

>     setInterval(async function () {
>                 ^^^^^
>     
>     SyntaxError: missing ) after argument list
>         at exports.runInThisContext (vm.js:53:16)
>         at Module._compile (module.js:414:25)
>         at Object.Module._extensions..js (module.js:442:10)
>         at Module.load (module.js:356:32)
>         at Function.Module._load (module.js:311:12)
>         at Function.Module.runMain (module.js:467:10)
>         at startup (node.js:134:18)
>         at node.js:961:3

我的代码是一个“简单”的 setInterval(1500 毫秒),其中包含 async / await:

setInterval(async function () {

  var data = await foo();
        var obj = new mongooseModel({
          mk: data.mk,
          name: data.name,
          a: data.a,
          b: data.b,
          c: data.c,
          v: data.v,
          p: data.p,
          l: data.l,
          h: data.h,
          o: data.o,
          sn: data.sn,
          n: data.n,
        });
        obj.save(function(err, tick) {
          if (err) return console.log(err);
        });
      });
}, 1500);

其他人遇到过这个问题吗? 提前致谢!!

【问题讨论】:

    标签: node.js asynchronous raspberry-pi async-await raspberry-pi3


    【解决方案1】:

    async/await 从 v7.6 开始由 node.js 支持。您需要升级已安装的 node.js 版本或使用 Promises。

    【讨论】:

    • 确实!我的版本是 v4.2.1 我使用了 apt-get 并认为我会得到最新版本......让我安装并回到你身边!谢谢 Alexmac
    • 根据您运行的操作系统,使用像 n 这样的节点版本管理器可能会更容易。
    • 是的,无论哪种方式,某种节点版本管理器都可能会有所帮助。我个人在处理带有节点和 NVM/n/whatever 的默认 Linux 软件包时遇到了很多问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-20
    • 2018-02-08
    • 2020-03-31
    • 2019-06-30
    • 2019-08-08
    • 1970-01-01
    相关资源
    最近更新 更多