5to6-编码模式
收集资料 代码 它允许您将您的 JavaScript 代码从 ES5 转换为 ES6 使用 j 代码转换。 。 。 .
使用量
npm install -g jscodeshiftnpm install 5to6-codemodjscodeshift -t node_modules/5to6-codemod/transforms/[transform].js [files]- 通过
git diff保持你想要的, 扔出去 如果你不这样做。 魔术!
选项旗
执行代码模块时,您可以配置这样的选项:
jscodeshift -t node_modules/5to6-codemod/transforms/[transform].js [files] --key=value
重置选项
我们的变换会自动区分,并通过重制配置密钥通过 j 代码转换。可以找到重播配置的官方文档 这里。我们目前支持以下重置密钥:
esprimainputSourceMaplineTerminatorquoterangereuseWhitespacesourceFileNamesourceMapNamesourceRoottabWidthtoleranttrailingCommauseTabswrapColumn
变换
amd- 将AMD样式模块转换为ES6import编号 :exportcjs- 变形常见JS风格require()拨打ES6电话import声明- 此转换接受以下选项旗:
hoist: 启用向上悬挂需要的语句
- 此转换接受以下选项旗:
no-strict- 删除“严格使用”语句exports- 移动通用JS样式module.exports对ES6的发言export声明named-export-generation- 添加对应于默认导出对象密钥的命名导出 。 只对作为默认导出对象的 ES6 模块有效 .let- 全部替换var调用letsimple-arrow- 将所有函数表达式替换为唯一返回语句的正文为箭头函数
已知问题
- 无法自动解析何时要使用
import * as varName。 。 。 . - 在许多情况下,最后的评论也缺失
simple-arrow在函数表达式正文中丢失注释