我可以通过webpack的以下策略轻松地将我的代码转换为单个模块:
{
entry: path.join(__dirname, 'src/index.js'),
output: {
path: path.join(__dirname, 'dist'),
filename: 'bundle.js',
libraryTarget: 'umd',
library: 'totem-ui',
}
}
我的src/index.js
文件如下所示:
export { default as Button } from 'src/atoms/Button';
这可以被第三方应用程序使用,如:
import { Button } from 'totem-ui';
但是,我要完成的工作与react-router
或lodash
的工作方式类似。例如,使用react-router,您可以导入单个模块,如下所示:
import Router from 'react-router/lib/Router';
就我而言,它看起来像这样:
import Button from 'totem-ui/atoms/Button';
这是如何通过webpack实现的?这种模式叫什么?
答案 0 :(得分:0)
我认为你可以使用library和libraryTarget选项 -
https://webpack.github.io/docs/configuration.html#output-librarytarget
同时检查这个样板,我认为解决了同样的问题 -
https://github.com/webpack/webpack/tree/master/examples/multi-part-library