我决定将我的生成器从ES5语法重写为ES6。但我遇到了在发布前转发生成器的问题。
问题:我们知道Yeoman生成器有templates
个文件夹,其中包含不同的文件。当Babel通过babel src --out-dir generators
拖拽所有生成器源时,它会跳过模板文件或者错误地打破traspiling。
我的Attepmts :我试图制作像babel src --out-dir generators && cp -rn src/ generators/
这样的东西,但我不喜欢这个解决方案。
问题:如何使用ES6语法创建旧结构generators/sub-generators
,而不是ES5。
感谢。
UPD :我希望Yeoman有像Mocha这样的东西--require babelhook.js
。
答案 0 :(得分:0)
我找到了这种情况的解决方案。
首先,我创建了src
文件夹,其中包含ES6语法中的生成器源。此文件夹的结构与通常的ES5生成器相同。
当我想编译这些来源时,我只需要复制它们并在generators
个文件夹中编译。
所以我在package.json
;
"scripts": {
"clean": "rm -rf ./generators",
"compile": "npm run clean && cp -r src/ generators/ && babel src --out-dir generators",
"prepublish": "npm run compile",
"test": "istanbul cover _mocha"
}
我做过的最后一件事是在ignore
文件中添加.babelrc
字段。因此,我确信模板将被复制但不会被删除。
{
"stage": 0,
"ignore": [
"app/templates",
]
}