Node.js: 拆分代码的正确方法是什么?

Node.js: What is the proper way of splitting code?

我的 index.js 文件有很多代码,可以分成很多部分。

基本上是这样的:

importing many dependencies;
importing many custom functions;

defining constants;

setting up express;
setting up apollo-server;

post-request #1
get-request #1
requests....

app.listern on port

我希望我的 index.js 文件包含 仅导入

为此,我将代码拆分为多个 .js 文件。大多数文件不导出任何内容,但表示为像我这样的一段代码:

// it's a listen.js file
db.sequelize.sync().then(function() {
  app.listen(process.env.PORT || 3000);
});

我使用 es6 语法像这样导入它(我导入整个文件):

import './core/api/rest/listen'

并得到一个错误:

db is not defined

我明白为什么它没有在listen.js中定义,因为我没有将它导入listen.js,但是我在导入index.js之前导入了db listen.js。为什么不可见?

顺便说一句,db 这里只是引发错误的众多变量之一。

如果我错了请纠正我,但我认为如果我在 index.js 中导入我所有的 variables/constants/dependencies 所有这些变量都可以访问导入的文件

import 语句用于导入由另一个模块导出 的绑定。

请看更多:developer.mozilla.org/.../Statements/import

您需要导出要导入的class/函数/变量