我写了下面的代码:
var fs = require('fs');
var data = {
name:'Bob'
}
,我得到这个错误:
fs.writeFile('data.json',data) "the 'cb' argument must be of type function. Received undefined"
我该如何修复它?
您正在使用异步回调风格的fs.writeFile
API,而没有回调(简称cb
)。
此外,在尝试写入数据之前,您没有将数据编码为JSON,因此也会失败。
:
- 使用
fs.writeFileSync()
同步写文件:fs.writeFileSync("data.json", JSON.stringify(data));
- 传入一个回调(可以是任何东西,但它需要在那里):
fs.writeFile("data.json", JSON.stringify(data), (err) => err && console.error(err));
- 使用
fs/promises
基于承诺的异步API:var fsp = require('fs/promises'); await fsp.writeFile("data.json", JSON.stringify(data));