Babel / webpack依赖项

时间:2016-12-07 15:06:21

标签: javascript npm webpack ecmascript-6 babeljs

我有一个私人图书馆,我已经转换为使用es6和webpack。如何以可以导入整个源树的方式包含此库?

库看起来像这样:

portedlibrary

src/dir1/Class1.js
src/dir1/Class2.js

我的应用程序看起来像这样:

的应用

src/app.js
src/app2.js
node_modules/portedlib/src/dir1/Class1.js
node_modules/portedlib/src/dir1/Class2.js

对于内部导入,我可以使用相对路径:import {app2} from './app2 对于库导入,我导入一个文件:import moment from 'moment'

如何从portedlibrary导入单个类?

当我尝试通过import {Class1} from 'portedlib'导入类时,出现以下错误: Module not found: Error: Can't resolve 'portedlibrary' in ...

1 个答案:

答案 0 :(得分:1)

将每个默认导出重新导出为另一个文件中的命名导出(例如index.js,以便您可以通过其名称引用lib):

// node_modules/portedlib/index.js
export { default as Class1 } from './src/dir1/Class1'
export { default as Class2 } from './src/dir1/Class2'

然后导入它们:

import { Class1, Class2 } from 'portedlib'