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

Jul*_*lie 4 babel babeljs

我们如何使用这是一个通天插件不是已经在巴别塔库接受?我很难通过babel插件文档找到这个答案.

我们有兴趣为for...in循环编写一个babel插件来解决ios9中的错误(ios9 Safari错误计算总和).虽然我们很乐意将其贡献给babel社区,但我也想知道它是否未被接受或者没有为一般消费做好准备,如何在本地开始使用和测试.

Ali*_*ees 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"
  ]
}

Run Code Online (Sandbox Code Playgroud)

完成后,您应该只是运行npm install,您的插件将变为您的项目的活动.