【发布时间】:2016-12-23 08:30:23
【问题描述】:
在构建 NPM 包时,如何创建能够支持樱桃采摘单独导出以节省 Webpack、Rollup 或 Browserify 包大小的构建?
首选语法是:
import { myModuleOne, myModuleTwo } from 'my-npm-package';
或者
import myModuleOne from 'my-npm-package/myModuleOne';
import myModuleTwo from 'my-npm-package/myModuleTwo';
【问题讨论】:
-
使用
require因为 Node.js 还不支持 ES6 模块。 -
@str 但是 webpack 和 Rollup 可以。
-
@Gothdo 当然,在开发时。但是你不应该(不能?)发布带有 ES6 模块的 NPM 包,因为并非所有包用户都可能使用 webpack 或 Rollup。
-
@str 你可以创建一个UMD包并在
package.json中设置为main,以及一个ES模块包并在package.json中设置为module。
标签: javascript webpack ecmascript-6 babeljs rollupjs