【发布时间】:2019-01-31 14:44:10
【问题描述】:
我对 NPM 脚本和 Babel 都很陌生。我以前使用过 Gulp,但我正在尝试转向 Webpack + NPM 脚本,甚至 NPM 仅在不需要 Webpack 时构建。这是后者的一个例子。
我愿意
- 使用我的主 ES6+ JS 文件
src/main.js -
使用 babel 生成一个相当现代的脚本文件
docs/main.js,使用如下目标:browsers: [ 'Chrome >= 60', 'Safari >= 10.1', 'iOS >= 10.3', 'Firefox >= 54', 'Edge >= 15', ], -
再次使用 babel 生成更“旧”版本的脚本
docs/main.legacy.js,使用如下目标:"browsers": ["> 1%, not ie 11, not op_mini all"] - 使用 npm 脚本创建两个构建任务,稍后我可以将它们放入一个命令中,例如
npm run build
在阅读Philip Walton's article 在他的构建过程中创建多个目标之后,我想知道:
- 仅当我不需要 Webpack 时,这是否可以使用 NPM 脚本实现?
- 建议采取哪些措施来启用此类功能?
我的尝试:package.json
"scripts": {
"buildModern": "babel src/main.js -o docs/main.js -presets=env",
"buildLegacy": "babel --no-babelrc src/main.js > docs/main.legacy.js",
"build": "echo '=> Building Source Files' && buildModern && buildLegacy"
},
【问题讨论】:
标签: npm webpack ecmascript-6 babeljs npm-scripts