为什么我的功能没有被认可?JavaScript
好的,我已经大大减少了代码,现在有点不同了,但它做的事情是一样的 game-socket.js action-timer.js combat.js 错误:为什么我的功能没有被认可?JavaScript,javascript,node.js,socket.io,Javascript,Node.js,Socket.io,好的,我已经大大减少了代码,现在有点不同了,但它做的事情是一样的 game-socket.js action-timer.js combat.js 错误: action-timer.js:5 combat(io, socket, app); ^ TypeError: combat is not a function at Timeout.app.online.actionTime.setTimeout [as _onTimeout] (C:\Users\w
action-timer.js:5
combat(io, socket, app);
^
TypeError: combat is not a function
at Timeout.app.online.actionTime.setTimeout [as _onTimeout] (C:\Users\wjpop\Desktop\kog\funcs\action-timer.js:5:7)
at listOnTimeout (timers.js:327:15)
at processTimers (timers.js:271:5)
我明白了,奇怪的是我不得不这样做,因为通常情况下不需要这样做,但action-timer.js应该是这样的:
module.exports = (type, io, socket, app) => {
const combat = require("./combat/combat");
if (type == "combat") {
app.online.actionTime = setTimeout(() => {
combat(io, socket, app);
}, 1000);
} else if (type == "tradeskill") {
}
};
你能补充更多关于错误的细节吗?你写了“它会说中间函数,不是函数”和“最后一个文件(战斗),这是错误发生的地方。”。你能不能指定确切的错误信息以及错误发生在js中的确切位置?“它会说“中间”函数,不是函数”什么是“中间”函数?你能提供更多关于错误是什么以及在哪里发生的详细信息吗?如果可能,请创建一个小的可执行示例来演示错误。在仍然出现错误的情况下,尽可能多地删除代码。我更新了完整错误,并根据它们的文件名对代码进行了标记。在那里,我尽可能减少了代码,产生了相同的错误。
const startAction = require("../action-timer");
module.exports = (io, socket, app) => {
//Run another combat
console.log("COMBAT");
startAction("combat", io, socket, app);
};
action-timer.js:5
combat(io, socket, app);
^
TypeError: combat is not a function
at Timeout.app.online.actionTime.setTimeout [as _onTimeout] (C:\Users\wjpop\Desktop\kog\funcs\action-timer.js:5:7)
at listOnTimeout (timers.js:327:15)
at processTimers (timers.js:271:5)
module.exports = (type, io, socket, app) => {
const combat = require("./combat/combat");
if (type == "combat") {
app.online.actionTime = setTimeout(() => {
combat(io, socket, app);
}, 1000);
} else if (type == "tradeskill") {
}
};