我一直在尋找這個Socket.io MVC node.js,但我目前正在掙扎。Socket.io MVC node.js發射到房間
它說,在文檔中:
Socket.io API的
由於Socket.MVC僅僅是Socket.io一個包裹機構,所有的 相同的API可以使用Socket使用.MVC模塊。 (取決於您的版本)請所有API的可用的 列表通過訪問Socket.io Github上 頁面,或http://socket.io
我的問題是,我不能找到一種方法來發射插座MVC到房間。
socketMVC.to(userid).emit('message', {message:2});
應該可以工作,但事實並非如此。任何想法我可以做到這一點?
編輯: 用戶id與此處指定的相同: import * as'from'socket.io-client';
下載
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?");
});
編輯,在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!!!');
});
};
你確定'userid'是正確的嗎? – Phix
userid @Phix,與我分配的相同。所以是 – maria
請問您可以添加完整的代碼嗎? – Arkerone