Ich habe in diesem Socket.io MVC node.js untersucht, aber ich kämpfe derzeit.Socket.io MVC node.js emittieren zu Raum
Es heißt in der Dokumentation:
Socket.io API
Da Socket.MVC nur ein Wickelmechanismus für Socket.io ist, alle die gleiche API können die verwendet werden, um den Sockel mit .MVC Modul. Bitte beachten Sie eine Liste aller von der API zur Verfügung, indem die Socket.io Github Seite besuchen oder http://socket.io (je nach Version)
Mein Problem ist, dass ich einen Weg finden kann nicht Buchse MVC einen auszusenden Zimmer.
socketMVC.to(userid).emit('message', {message:2});
Sollte funktionieren, aber es nicht. Irgendeine Idee, wie ich das erreichen kann?
EDIT: Benutzer-ID ist die gleiche wie hier zugewiesen: importieren * als io von 'socket.io-Client';
herunterladen
oninit:
this.socket = io(this.socketurl);
var privateRoom = socket.request.session.passport.user;
socket.join(privateRoom);
this.socket.on('message', (data) => {
// this.messagesCounter = this.messagesCounter + 1;
alert("OMG?");
});
bearbeiten, in server.js
io.on('connection',function(socket) {
console.log('user connected');
OnlineUsers.push(socket);
// socket.join('');
console.log(socket.request.session.passport);
console.log("user is connceted");
socketMVC.init(io, socket, {
debug: true,
filePath: ['./src/routes/sockets.js']
});
socket.on('disconnect', function(){
console.log('user disconnected');
});
socket.on('add-message',function (message) {
io.emit('message', {type:'new-message', text: message});
});
socket.on('myevent', function(someData) {
console.log("MYEVENT WORKS???????");
});
});
sockets.js
var path = require('path');
module.exports = function (socket) {
var privateRoom = socket.request.session.passport.user;
socket.join(privateRoom);
socket.on('testing', function() {
console.log('GOT SOME SORT OF RESPONSE!!!');
});
};
Sind Sie sicher, dass "userid" korrekt ist? – Phix
userid @Phix, ist das gleiche, dem ich es zugewiesen habe. also ja – maria
Können Sie bitte den vollen Code hinzufügen? – Arkerone