我在尝试运行我用Node.js编写的机器人时遇到了一个不幸的错误。
每当试图运行调用bot的各种其他函数的init脚本时,我都会得到以下错误“TypeError:无法在代码中的不同位置读取属性'Symbol(Symbol.toStringTag)'的undefined”。我知道这是JavaScript的标准函数之一,所以我不确定为什么它会给我一个错误。
奇怪的是这些错误是新的,我以前多次运行脚本都没有遇到这个问题。
下面是async.js中的第一个错误行,显示在第175行。
174 function isAsync(fn) {
175 return supportsSymbol && fn[Symbol.toStringTag] === 'AsyncFunction';
176 }
第二个例子在我自己的bot_startup. js中的第43行。
43 connectToServerCallback(null, "connected");
似乎每当试图将数据转换为字符串时,它都会出错,但我不知道如何解决这个问题。任何帮助都将不胜感激。
2条答案
按热度按时间lhcgjxsq1#
对于那些想知道的人,我能够自己解决这个问题。
这个错误本身是由于在async.waterfall中调用的一个函数没有被正确定义(提交到Git时的一个错误回滚了它调用函数的一个文件,使得函数调用不再有效)。
b4wnujal2#
对我来说,问题是async.waterfall()方法调用中缺少逗号。我收到以下错误堆栈:
错误行:async.waterfall([foo. bar],cb)
固定线路:async.waterfall([foo,bar],cb)
我不确定,但如果你的问题和我的相似,它可能在bot startup.js的第49行,如屏幕截图所示。我希望这些信息对遇到类似问题的人有用。