首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >DeprecationWarning:不建议在不使用回调的情况下调用异步函数。-如何找到"function:“在哪里?

DeprecationWarning:不建议在不使用回调的情况下调用异步函数。-如何找到"function:“在哪里?
EN

Stack Overflow用户
提问于 2016-12-17 13:14:53
回答 6查看 27.4K关注 0票数 32

我最近将我的节点更新到7.2.1,并注意到有一个警告即将到来:

(node:4346) DeprecationWarning:不推荐调用不带回调的异步函数。

这个4346是用来做什么的?我在js文件中只有2000行,所以它不能是行号。我在哪里可以找到代码?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2016-12-17 13:48:08

您可以使用--trace-deprecation--throw-deprecation选项。

例如:

node --trace-deprecation app.js

或者:

node --throw-deprecation app.js

第一个选项将记录堆栈跟踪,第二个选项将抛出错误(如果未捕获,还将记录堆栈跟踪)。

此外,4346很可能是进程ID。

票数 56
EN

Stack Overflow用户

发布于 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

票数 5
EN

Stack Overflow用户

发布于 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;
    }
});
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41195580

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档