NodeJs – 如何用import关键字避免相对path

根据几个github文档,我已经尝试了这一点,虽然它是真正的require关键字,因为第一个服务器文件的第一行激发[index.js]:

process.env.NODE_PATH = 'app'; require('module').Module._initPaths(); 

它没有工作。 然后,我在webpack中读取,但仍然不起作用:

 resolve: { root: path.resolve(path.join(__dirname + '/app')), alias: { app: 'app', component: 'app/components', utility: 'app/utils' }, extensions: ['', '.js', '.jsx'] }, 

我如何避免无休止的'../../../../',因为我的项目越来越深,因为我不想继续这样做:

从'../../../../../Whatever'导入MyComponent?

谢谢

目前我使用的是相同的解决scheme,在这个列表中没有6。

 process.env.NODE_PATH = __dirname; require('module').Module._initPaths(); 

这使我可以通过文件夹/文件名称调用我所有的js文件,无论我在我的代码库中,例如

 require('services/userService'); 

这是一个相当丑陋的解决scheme,因为它依赖于一个私有的Node.js核心方法,这也是一个黑客,可能会停止对前一个或下一个版本的节点工作。

我也问了一些关于Quora的问题。