使用require()函数没有path

我正在使用打字稿的node.js / express项目。我没有任何问题导入的东西,但我必须使用以下格式是丑陋/不可扩展

import MyModule = require("../../ModuleFolder/MyModule"); 

假设我的模块看起来像这样

 export module MyModule { export function doStuff():void { //do stuff here } } 

我不知道如何拉入模块和类没有指定的path。 理想情况下,我希望能够像这样拉

 import MyModule = require("MyModule"); 

有什么我可以做到这一点,或改善这种实现?

更新:最终我最终使用这个模块,这工作得很好。

如果你在中指定一个脚本

 var Name = require ('name') 

比nodeJS自动查找node_modules中的目录“名称”和里面的模块定义。 如果你在其他地方有你的模块,那么你需要指定path。 或者在node_modules创build指向你的模块目录的符号链接。

最好的方法是制作NPM模块(它们可以是私有的,只是不要npm publish它们),并把它们放到你自己的node_modules文件夹中。 由于使用require()自动查找这些文件夹 ,您可以利用这种方式在您身边…

模块./node_modules/MyModule/index.ts

 export module MyModule { export function doStuff():void { //do stuff here } } 

您可以在该./node_modules/MyModule文件夹中运行npm init来创buildpackage.json文件。

主文件./src/some/other/folder/or/elsewhere/main.ts

 import MyModule = require('MyModule');