Javascript 如何将节点js util.promisify与writeFile fs函数一起使用并等待

Javascript 如何将节点js util.promisify与writeFile fs函数一起使用并等待,javascript,node.js,mocha.js,Javascript,Node.js,Mocha.js,如何将此函数转换为使用异步/等待样式: it.only("should bump the 'minor' version attribute", () => { const writeFile = util.promisify(require("fs").writeFile); return writeFile("bump-minor.json", "contents").then(function() { console.log('done'); }); }); 我

如何将此函数转换为使用异步/等待样式:

it.only("should bump the 'minor' version attribute", () => {
  const writeFile = util.promisify(require("fs").writeFile);
  return writeFile("bump-minor.json", "contents").then(function() {
    console.log('done');
  });
});
我试过使用这个,但不起作用:

const writeFile = util.promisify(require("fs").writeFile);
await writeFile("bump-minor.json", "contents");
console.log('done');
第2行显示以下错误:

Parsing error: Unexpected token writeFile
如果我在mocha测试函数中添加“async”:

it.only("should bump the 'minor' version attribute", async () => {
  const writeFile = util.promisify(require("fs").writeFile);
  return writeFile("bump-minor.json", "contents").then(function() {
    console.log('done');
  });
});
然后我在第1行得到这个错误:

Parsing error: Unexpected token =>
我可能遗漏了async/await和util.promisify在node中如何协同工作的一些基本知识


使用节点8.7.0.

在“npm测试”中,我在mocha之前运行eslint:

删除“eslint”调用可修复此问题:

"scripts": {
  "test": "mocha"
}

出于某种原因,eslint无法使用mocha的异步/等待语法

哪一行?…@FastSnail您是指错误显示的那一行?我已经编辑了这个问题。@FastSnail我也在使用mocha,问题编辑了你能发布一个完整的例子,包括
async
关键字吗?@skille我编辑了这个问题,在mocha的测试函数中添加了节点版本和async关键字。只要你在
.eslintrc
中启用ES7,你就可以保留eslint检查。看见
"scripts": {
  "test": "mocha"
}