Я пытаюсь вызвать событие socket.on () из внешнего файла .js и не могу понять, чего мне не хватает ... Я использую NodeJS с ExpressJS. Ниже приведены файлы:
app.js (файл сервера)
const fs = require('fs');
const express = require('express');
const app = express();
const http = require('http').Server(app);
var io = require('socket.io')(http);
....
//Socket Io functions
const ioObj = require( './library/io.js')(app, express, io);
// This route will be used to print the type of HTTP request the particular Route is referring to
router.use(function (req, res, next) {
console.log("/" + req.method);
next();
});
....
/ library / io.js (файл сокетов)
module.exports = function(app, express, io){
io.on('connection', async function(socket) {
socket.on('refreshPage', function(){
console.log("page should now be refreshed !!");
socket.emit("refreshPageNow");
});
....
});
}
Я пытаюсь сделать следующее:вызвать / получить доступ к событию refreshPage из /library/io.js, чтобы я мог отправить сигнал «обновить веб-страницу».Я пытался сделать что-то вроде:
io.sockets.emit("refreshPage");
и
ioObj.sockets.emit("refreshPage");
Но не сработало ...