如何创建供内部使用的babel插件

时间:2018-12-05 19:29:18

标签: babeljs babel

我们如何使用baem储存库中尚未接受的 的babel插件?通过babel插件文档无法找到答案。

我们有兴趣为for...in循环编写babel插件,以解决ios9(ios9 Safari miscalculating sum)中的错误。尽管我们很乐意将其贡献给babel社区,但我也想知道它是否未被接受或尚未准备好用于一般消费,如何开始在本地使用和测试它。

1 个答案:

答案 0 :(得分:5)

可以使用可以在git上托管的自定义babel插件。

您可以参考https://github.com/jamiebuilds/babel-handbook/blob/master/translations/en/plugin-handbook.md了解如何在本地开发和测试babel插件。

一旦开发了插件,就可以在项目的package.json文件中为其添加依赖项。

请注意,如果您打算将插件存储库设为私有,则必须创建一个个人访问令牌(对于Github),以允许npm提取存储库内容。在这种情况下,您的package.json文件中的示例条目如下:

"babel-plugin-transform-for-of-loop": "git+https://{token}:x-oauth-basic@github.com/username/babel-plugin-transform-for-of-loop"

无论您为插件选择什么软件包名称,都需要在.babelrc文件中为其添加引用。对于此示例,如下所示:

{
  ...
  "plugins": [
    "babel-plugin-transform-for-of-loop"
  ]
}

完成此操作后,您只需运行npm install,插件就会对您的项目生效。