0

在我的项目文件夹project中,我有一个utils.js像这样的文件

global.root_path = process.cwd();
global.custom_require = function() {
    console.log('custom require called');
}

我想在节点的每次执行中都包含这个文件,以便在project我可以调用的每个 js 文件中custom_require,或者global.root_path像我已经使用内置函数一样进行访问require

您知道是否有解决方案(命令行选项、环境变量或其他)来实现这一目标?

更新 我不想包含utils.js在每个文件中,在这种情况下我不需要修改global对象。

谢谢!

4

1 回答 1

1

简直require了。示例app.js

require('./utils.js');

var express = custom_require('express');
var app = express();
var port = process.env.PORT || 3000;

app.listen(port);

然后,你可以做(​​在终端)

node app

只要您require的代码包含其上的全局声明,那么您就可以从任何require事后的文件中使用这些全局变量。

您很可能不希望有一个自定义“插件”在本地运行时改变所有应用程序的行为,因此最好远离这种模式。相反,您可能想要创建一个模块,npm link在其上使用,然后npm link something在项目目录中something使用模块名称。

然后每个项目可以像一开始一样添加一行require('something');。由于. something_npm link

于 2013-11-08T11:51:01.510 回答