从 require() 文件访问函数

loc*_*ost 1 javascript node.js npm browserify

以下是代码示例:

测试.js:

function print(t){
    console.log(t);
}
Run Code Online (Sandbox Code Playgroud)

索引.js:

var test = require('./test.js');
test.print("ok");
Run Code Online (Sandbox Code Playgroud)

我收到一个test.show is not a function错误,并且我不确定为什么如果其他 npm 模块似乎可以工作,它就无法工作。我正在使用 browserify 使要求在浏览器中工作。

要求非来自模块的文件在 npm 中如何工作?

vic*_*ohl 5

您需要先导出它:

test.js:

function print(t){
    console.log(t);
}

exports.print = print;
Run Code Online (Sandbox Code Playgroud)

然后你可以调用它:

Victors-MacBook-Pro:a kohl$ node
> var test = require('./test')
undefined
> test.print("ok");
ok
Run Code Online (Sandbox Code Playgroud)