Ich mache meine erste Chat-App mit Node und Socket.io. Bisher funktioniert alles korrekt, außer wenn ich versuche, die Variable client.nickname auszugeben.NodeJS Socket.io Variable undefined
index.html
var socket = io.connect('http://localhost:3000');
socket.on('connect', function(data){
$('#status').html("Connected!");
var nickname = prompt("Whats ur name?");
socket.on('join', nickname);
});
$('#submit-btn').click(function(){
var msg = $('#input_text').val();
socket.emit('messages',msg);
});
socket.on('messages', function(data){
console.log(data);
});
app.js
io.on('connection', function(client){
client.on('join', function(name){
client.nickname = name;
});
client.on('messages', function(data){
var nickname = client.nickname;
client.broadcast.emit('messages', nickname +": " + data);
client.emit('messages', nickname + ": " + data);
});
});
Meine Konsole Ausgänge: undefined: Die richtige Botschaft.
Es soll Ausgang: Kyle (oder was auch immer in der Eingabeaufforderung eingegeben wird): Die richtige Botschaft.
Danke! Ich musste socket.on ändern ('Join', Nickname); zu socket.emit ('Join', Nickname); in der index.html –
Ja, ich habe meine Antwort zu einem klareren Beispiel aktualisiert, aber es sieht so aus, als ob Sie es bereits =). – sebenalern