Node.js ReferenceError:未定义套接字。socket.io

Node.js ReferenceError:未定义套接字。socket.io,node.js,socket.io,Node.js,Socket.io,此错误出现在socket.io中 //SERVER.JS var express = require('express'); var app = express(); var bodyParser = require('body-parser'); var port = process.env.PORT || 8080; var http = require('http').Server(app); var io = require('

此错误出现在socket.io中

//SERVER.JS

var express    = require('express');
var app        = express();
var bodyParser = require('body-parser');
var port       = process.env.PORT || 8080;
var http       = require('http').Server(app);
var io         = require('socket.io')(http);
require('./app/routes.js')(app, io);
//ROUTES.JS

socket.emit('dlReady', { description: 'Your file is ready!'});
我得到这个错误:

ReferenceError: socket is not defined
编辑:

如何使用套接字:

var io = require('socket.io').listen(80);

io.sockets.on('connection', function (socket) {
  socket.emit('news', { hello: 'world' });
  socket.on('my other event', function (data) {
    console.log(data);
  });
});

请检查如何使用套接字:向我们展示routes.js中其余的相关代码。我应该在哪个文件中编写var io=require行?当我想发出事件时会发生什么,而不是在用户连接时发生什么?试试这个io.sockets.emit'hello';但这就是我在问题中包含的代码中所做的!我的代码中有什么错误?你要排队吗?我在哪里写?
var io = require('socket.io').listen(80);

io.sockets.on('connection', function (socket) {
  socket.emit('news', { hello: 'world' });
  socket.on('my other event', function (data) {
    console.log(data);
  });
});