我无法在expressJs的其他模块中导入app.js。它正在导入,但我无法使用 app.js 文件中定义的函数
我的代码是这样的- 我有这个 应用程序.js
var app = express();
var expressWs = require('express-ws')(app);
.
.
.
wss= expressWs.getWss();
// console.log(wss); // works fine
app.getWss=function(){
return "hello";
};
app.listen(3001);
module.exports = app;
在/socketroutes/socketroutes.js 内的文件中
var app = require('../app');
console.log(app); // prints an empty object {}
console.log(app.getWss()) // returns undefined function and doesn't work
我想在另一个模块中使用 app.js 中定义的一些变量或函数。因为 websocket 服务器的实例应该只创建一次。我无法在每个模块中创建 wss 实例。
最佳答案
这主要是因为循环依赖。 尝试将 module.exports 行移至 app.js 文件的开头。
关于javascript - 无法在expressJs中导入其他模块中的app.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39804059/