我最近将我的节点更新到7.2.1,并注意到有一个警告即将到来:
(node:4346) DeprecationWarning:不推荐调用不带回调的异步函数。
这个4346
是用来做什么的?我在js文件中只有2000行,所以它不能是行号。我在哪里可以找到代码?
发布于 2016-12-17 13:48:08
您可以使用--trace-deprecation
或--throw-deprecation
选项。
例如:
node --trace-deprecation app.js
或者:
node --throw-deprecation app.js
第一个选项将记录堆栈跟踪,第二个选项将抛出错误(如果未捕获,还将记录堆栈跟踪)。
此外,4346
很可能是进程ID。
发布于 2017-12-19 17:37:13
您需要为异步方法包含一个回调函数(在本例中为writeFile
)。
例如
var fs = require('fs');
fs.writeFile('writeMe.txt',data,'utf8',(error)=>{
// your code goes here
});
哪里
(error) => { });
是回调函数。
来自版本: v7.0.0
回调参数不再是可选的。不传递它将发出弃用警告。
有关更多信息,请参阅:https://nodejs.org/api/fs.html#fs_fs_writefile_file_data_options_callback。
发布于 2017-12-28 12:39:57
我自己更喜欢以下两种方法。
1:
fs.writeFile('example.md', data, (error) => { console.log("Error!"); });
2:
fs.writeFile('example.md', data, function (err) {
if(err){
throw err;
}
});
https://stackoverflow.com/questions/41195580
复制相似问题