我需要如何定义用户? ReferenceError:用户未定义Steam用户

时间:2018-11-04 03:42:25

标签: javascript node.js nodes steam steam-web-api

在我启动脚本时,出现此错误:

/var/www/html/bot/driver.js:309
    if(users[user.steamid])
             ^

ReferenceError: user is not defined
    at Namespace.<anonymous> (/var/www/html/bot/driver.js:309:14)
    at emitOne (events.js:116:13)
    at Namespace.emit (events.js:211:7)
    at Namespace.emit (/var/www/html/bot/node_modules/socket.io/lib/namespace.js:213:10)
    at /var/www/html/bot/node_modules/socket.io/lib/namespace.js:181:14
    at _combinedTickCallback (internal/process/next_tick.js:132:7)
    at process._tickCallback (internal/process/next_tick.js:181:9)

有人可以向我解释吗?我该如何定义Steam用户? 脚本崩溃的部分看起来像这样:

io.sockets.on('connection', function(socket) {
    var index = -1;
    if(users[user.steamid])
    index = users[user.steamid]['socket'].indexOf(socket.id);
    if (index > -1) {
        users[user.steamid]['socket'].splice(index, 1);
    }
    if(users[user.steamid]) { if(Object.keys(users[user.steamid]['socket']).length == 0) delete users[user.steamid]; }
  });

在进入控制台之前,它会要求我提供Steam Guard Code,但随后它立即崩溃到该错误。

1 个答案:

答案 0 :(得分:1)

您实际上需要告诉系统user是什么,它不知道它是什么,因为您没有在任何地方定义它,并且它没有任何引用或来源。

如果您执行以下操作:

const user = 'something';

它至少会被定义,但这和没有定义它一样没用,因为您显然从库中丢失了一些逻辑,或者因为user应该被定义为类似的东西。