Не удается прочитать свойство 'on' из неопределенного?-> ОШИБКА - PullRequest
0 голосов
/ 28 декабря 2018

Итак, я создаю веб-приложение, и при создании серверной части я застрял из-за ошибки в CMD, которая говорит:

     TypeError: Cannot read property 'on' of undefined

Я попытался установить соединение между server.jsи client.js, но, похоже, он не работает, хотя я включил все необходимые модули.

var fs = require('fs'); // required for file serving
var http = require('http');
var express = require('express');
var app = express();
var socket = require('socket.io');
var io = require('socket.io');

// loading all HTMl files

// loading CSS, JS, Pictues

//  for the HTML index 

// server.listen

//  !!! HERE IS THE PROBLEM !!!
 io.sockets.on('connection', newConnection);
 function newConnection(socket){
    console.log('new connection');
    console.log(socket);
 }

Я хочу, чтобы мой server.js связывался с client.js (там ничего не написано)и работать как обычный сервер!

Каждый совет очень ценится!:)

Ответы [ 3 ]

0 голосов
/ 28 декабря 2018

Вам необходимо передать объект вашего сервера в инициализатор io.Следующий код может помочь:

var fs = require('fs'); // required for file serving
var express = require('express');
var app = express();
var server = require('http').Server(app);
var io = require('socket.io')(server);

var port = process.env.PORT || 8080;
server.listen(port);

io.sockets.on('connection', newConnection);
function newConnection(socket){
   console.log('new connection');
   console.log(socket);
}
0 голосов
/ 28 декабря 2018

Требуется только один Требуется оператор . Удалите один из них.

как

const io=require("socket.io");

io.on("conn",function(){
        console.log("New Connection");
})
0 голосов
/ 28 декабря 2018

Вы инициализировали io неправильно.Попробуйте вот так:

var io = socket(http);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...