できないのかなーとTwitterで呟いたら@kumatch さんに教えてもらったので試してみた。
こんなファイル構成の時
index.js
package.json
node_modules/
foo/
index.js
package.json
node_modules/foo/index.js
はES6 moduleで書いて、babelでコンパイルして返したいようなケース。
node_modules/foo/index.js
でbrowserify: {transform: ...} しておけば使ってくれる。
{
"name": "foo",
"version": "1.0.0",
"main": "index.js",
"browserify": {
"transform": "babelify"
}
}
自分がやったときはホスト側のbabelifyを使っていたけど、たぶんpackage.jsonのdependenciesにあれば使ってくれそうな気がする。(未検証)
flowtype
自分がやりたかったのは、flowtypeで書かれたモジュールを分割したかったのだけど、babelが一応superset的な位置にあるのでflowでチェックしつつ依存先との型を合わせるのは、うまく動いた。とはいえeslintないと辛そう。