gpt4 book ai didi

javascript - 从函数-Node JS -socket.io发出事件的正确方法

转载 作者:行者123 更新时间:2023-12-03 01:21:50 24 4
gpt4 key购买 nike

假设我有两个文件。

server.js

test.js

server.js 已准备好所有初始化代码(Mongoose、Express 等)。它还具有以下代码:

const io = require('socket.io')(server);

在我的 test.js 文件中,我有一些与 mqtt 相关的内容。然而,这是无关紧要的,请理解我在那里没有任何变量访问权限(req,app)。因为该文件不是路线或任何东西的一部分。

它包含在 server.js 中:

require('test.js');

我不会深入了解 MQTT 或其工作原理的任何细节。考虑 test.js 中的一个或多个函数在特定时间运行。那么,当发生这种情况时,如何使用 test.js 文件中的 socket.io 发出事件?

我的客户端仪表板已准备好接收事件。我只是很困惑如何设计系统,特别是如何访问 server.js 文件中存在的 io 变量。

最佳答案

正如已经提到的,只需从 test.js 导出一个以 io 作为参数的函数:

  module.exports = function test(io) {
io.on("connection", socket => {
socket.emit("greeting", "hello world!");
});
};

从你的 server.js 中,你只需传入参数:

 require("./test.js")(io);

关于javascript - 从函数-Node JS -socket.io发出事件的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51732021/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com