【发布时间】:2015-06-25 05:17:24
【问题描述】:
客户端代码:
var app = {
data: {
user: null
}
};
var client = {
connect: function () {
client.data.socket.on('connectCallback', function (obj) {
if (obj.userFound) {
app.data.user = obj.user;
return app.data.user;
}
});
/**
Other callbacks
**/
};
};
app.data.user 始终是null,我还尝试了第二个函数来更改变量。服务器返回的obj不是null,我已经查过了。
使用var foo = client.data.socket.on 之类的代码不起作用,因为 foo 是一个 socket.io 对象。传递自定义回调函数也不起作用,因为我无法将它传递给 socket.io 回调。
我不想像某些人认为的那样进行 ajax 调用。
【问题讨论】:
-
"
app.data.user总是null" 在什么代码中?你还没有展示你在哪里/如何使用它,这是问题的一个非常重要的部分。 -
我使用开发者工具调试代码,调用回调后我使用控制台检查变量。还有其他代码可以更改正确执行的页面内容。
标签: javascript node.js asynchronous socket.io