NodeJS:如何在不使用require的情况下包含一些javascript代码段?

时间:2016-06-18 15:18:09

标签: javascript node.js include require code-snippets

我想在不使用require的情况下包含一些js文件,因为它会将它链接到变量,并且我有一些我想直接调用的函数。我该怎么做 ?这是不好的做法吗?

我想避免的是: 假设我有tool.js如下:

function foo() {
    log.debug("foo");
}    
exports.foo = foo;
app.js中的

var tool= require('tools.js');

tool.foo();

我希望能够在不为其创建模块的情况下调用foo,就好像它是在app.js中定义的那样;像这样

foo();

2 个答案:

答案 0 :(得分:2)

您可以要求文件并使用其功能,而无需使用全局对象将其分配给变量。

file1.js

function logger(){
    console.log(arguments);
}

global.logger = logger;

file2.js

require('./file1');

logger('ABC');

这种方法可以摆脱变量范围,并且会污染全局命名空间,从而可能导致与变量命名的冲突。

答案 1 :(得分:0)

你需要像这样使用全球,

======= app.js ======

global.foo= require('tools.js'); // declare as global
foo(); // can be called from all files