如何使用ES6模块导入导入path

有没有什么好的方法来使用dynamicpath优雅地加载一个模块(IDE可以提示或进入文件)或从根目录开始导入模块?

import * as Q from 'q'; import * as loopback from 'loopback'; import datasources from '../../../datasources.json'; import app from '../../../server'; import {ApiError, ValidationError, DatabaseError} from'../../../utils/error-handlers'; 

模块标识符甚至不一定是path。 例如,它经常searchnode_modules文件夹。 快速的答案是依赖于模块加载器的语法。

但是实际的答案是,如果你使用的是Babel(就像你自己指定的那样是一个ES6导入),你可以在开头指定一个相对于项目根目录的位置。 例如,在我的Vue.js项目中,我有:

 import PageFooter from '@/components/PageFooter' 

在我的情况下,这可以避免在不同的深度有一个复杂的嵌套组件树。

在你的情况下,你可以有:

 import app from '@/server' 

假设服务器在项目根目录下(例如server.js而不是文件夹本身)。