babel CLI复制nonjs文件

Yan*_* Li 75 babeljs

我正在运行一个babel cli命令

babel src --out-dir lib
Run Code Online (Sandbox Code Playgroud)

将es6脚本从src复制到lib.但是,它不会复制我在src /文件夹中的css/scss文件.有没有办法让它复制它们?

Emi*_*lev 154

实际上有一个选项babel:

babel src --out-dir lib --copy-files
Run Code Online (Sandbox Code Playgroud)

注意:确实,babels的主要目的是处理javascript文件,但是如今babel的大型工具套件通常不需要更复杂的构建脚本设置gulp.无需设置可以将其添加到packages.json:

{
  ...
  "devDependencies": {
    "babel": "*",
    "babel-cli": "^6.4.0",
    "babel-preset-es2015": "^6.3.13"
  },
  "scripts": {
    "watch": "babel --watch src --out-dir lib --source-maps inline --copy-files",
    "build": "babel src --out-dir lib --source-maps inline --copy-files" 
  },
  "babel": {
    "presets": [
      "es2015"
    ]
  }
}
Run Code Online (Sandbox Code Playgroud)

  • 这几乎有效,只是它没有复制 jsx 文件:/ (2认同)

Yan*_* Li 6

我找到了使用ncp模块执行此操作的方法

npm install ncp
Run Code Online (Sandbox Code Playgroud)

这个模块基本上像一个cp,除了它在

这不是全局模块,因此我们使用

node -e \"require('ncp').ncp('./src', './lib')\" && babel src --out-dir lib
Run Code Online (Sandbox Code Playgroud)