【问题标题】:Include files in node.js directly直接在 node.js 中包含文件
【发布时间】:2020-11-28 11:22:49
【问题描述】:
我知道这个问题听起来像是 this question 的重复,但事实并非如此。
这个问题展示了如何包含一个文件,然后将其所有成员存储在自己的命名空间中。但是有没有办法包含文件,使成员在默认命名空间中?
所以我想要这样的东西,
include("abc.js");
testFunc(1, 2, 3);
testFunc 在 abc.js 中声明
【问题讨论】:
标签:
javascript
node.js
import
include
【解决方案1】:
首先nodejs不知道include,你应该使用require或者import
如果你有一个模块 (testModule):
module.exports = {
testFunc: (...args) => {/* ... */}
}
您应该能够使用将testFunc 导入到当前的“命名空间”中
const {testFunc} = require("./testModule.js");
【解决方案2】:
node.js 中有一个公共命名空间,所有加载的文件都可以访问,global
在abc.js:
global.testFunc = () => 'bar';
所以下面会起作用
require('./abc');
testFunc(1, 2, 3);
但实际上不建议将其用于性能目的,例如配置值除外