我花了几天时间解决这个问题。我正在尝试构建一个带有socket.io
的页面。 我是node.js & socket.io
的开始者.我阅读了socket.io
文档,并逐步构建页面。 然后我得到了一个错误,Uncaught ReferenceError: io is not defined
但是我可以从http://localhost:3000/socket.io/socket.io.js
中获取js内容
我在客户端使用var socket = io.connect('http://localhost')
或使用var socket = io()
。两者都不好。我做什么节目?
这是我在服务器端的代码:
var app = express();
var http = require('http').Server(app);
var io = require('socket.io')(http);
var port = 3000;
http.listen(port, function(){
console.log('Server listening at port %d', port);
})
在客户端:
var socket = io();
socket.on('news', function(data){
console.log(data);
})
在客户端,您应该使用 server.io 客户端
import io from 'socket.io-client';
你可以运行
npm i socket.io-client
要安装依赖项,或者您可以提供 socket.io.js 在 https://www.npmjs.com/package/socket.io-client 提供的 dist 文件夹中找到
<script src="/socket.io/socket.io.js"></script>
未测试在您的哈巴狗模板中,您可以在头部或身体上做,
doctype html
html(lang="en")
head
script(src="/socket.io/socket.io.js").
//Your logic here