使用模块导出之外的函数

刘易斯·拉夫

我正在尽力解释我正在尝试做的事情,如果有什么不明白的地方,请告诉我。

我有一个文件叫做www我在那里设置我的套接字

var server = http.createServer(app);
var io = require('socket.io')(server);
require('../store.js')(io);

我正在将 io 数据发送到另一个文件以正确使用它。捕捉io我正在使用的。

module.exports = function (io){

}

我想要做的是如何使用文件中iomodule.exports外部store.js我试图创建一个变量然后使用它,但这似乎不起作用。例如我是如何尝试的。

var ioData;

ioData.on('connection', function(socket) {
  //Doesn't work
});

module.exports = function(io){
  ioData = io;
}
用户9437429

你可以这样做

商店.js

const store = {
  io: {},
  setIo(io) {
    store.io = io;
  },
  setHandlers() {
    store.io.on('connection', function(socket) {
      // do something with connected socket
    });
  }
};

module.exports = store;

万维网

var server = http.createServer(app);
var store = require('../store');
var io = require('socket.io')(server);

store.setIo(io);
store.setHandlers(io);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章