Javascript 我在socket.io客户端中收到io未定义错误

Javascript 我在socket.io客户端中收到io未定义错误,javascript,jquery,html,node.js,socket.io,Javascript,Jquery,Html,Node.js,Socket.io,这是我创建到套接字连接的服务器端代码。我使用node.js代码并在其中使用socket.io const path = require('path'); const http = require('http'); const express = require('express'); const socketIO = require('socket.io'); const port = process.env.PORT || 3000; var app = express(); var serv

这是我创建到套接字连接的服务器端代码。我使用node.js代码并在其中使用socket.io

const path = require('path');
const http = require('http');
const express = require('express');
const socketIO = require('socket.io');
const port = process.env.PORT || 3000;
var app = express();
var server = http.createServer(app);
var io = socketIO(server);


io.on('connection', (socket) => {
  console.log('New user connected');


})
这是我的客户端代码,我使用纯javascript作为客户端,我使用的是socket.io的2.1.1版本,我得到的io没有定义错误,我对socket.io非常陌生,请帮我一个这个

<!DOCTYPE html>
<html>
  <head>
    <meta name="viewport" content="initial-scale=1.0">
    <meta charset="utf-8">

  </head>
  <body>

    <script>

 $(document).ready(function(){
   var socket = io('http://localhost:3000');
        console.log("Socket connected"+socket.connected);

        socket.on('notification', function(value){
            //insert your code here
        });
});


    </script>


        <script  src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>

        <script src="http://localhost:3000/socket.io/socket.io.js"></script>



     </body>
</html>

您的第一个脚本(使用io的脚本)在其他脚本(jQuery和Socket脚本)之前运行。像这样移动脚本:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>

<script src="http://localhost:3000/socket.io/socket.io.js"></script>

<script>
  $(document).ready(function() {
    var socket = io('http://localhost:3000');
    console.log("Socket connected" + socket.connected);

    socket.on('notification', function(value) {
      //insert your code here
    });
  });
</script>

您的第一个脚本(使用io的脚本)在其他脚本(jQuery和Socket脚本)之前运行。像这样移动脚本:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>

<script src="http://localhost:3000/socket.io/socket.io.js"></script>

<script>
  $(document).ready(function() {
    var socket = io('http://localhost:3000');
    console.log("Socket connected" + socket.connected);

    socket.on('notification', function(value) {
      //insert your code here
    });
  });
</script>

由于我是web开发新手,这可能是错误的,但我会尝试将您的脚本放在您导入socket.io.js的脚本下面

在您的函数中,您正在调用io,但在调用它之前,它似乎没有被声明


希望这能起作用。

因为我是web开发新手,这可能是错误的,但我会尝试将您的脚本放在导入socket.io.js的脚本下面

在您的函数中,您正在调用io,但在调用它之前,它似乎没有被声明

希望这能奏效