簡體   English   中英

無法讀取未定義的屬性“ on”? ->錯誤

[英]Cannot read property 'on' of undefined? -> ERROR

因此,我正在創建一個Web應用程序,並且在構建服務器部件時由於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(沒有任何內容)聯系並作為普通服務器運行!

每個建議都非常感謝! :)

您需要將服務器對象傳遞給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);
}

您未正確初始化io 嘗試這樣:

var io = socket(http);

需要一個require語句。刪除其中之一。

喜歡

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

io.on("conn",function(){
        console.log("New Connection");
})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM