请教一下Babel编译出的文件单独在浏览器中跑时

发布于 2022-09-11 21:13:03 字数 374 浏览 26 评论 0

我把babel编译出的多个文件在浏览器环境单独使用,并且在head中引用了polyfill,然后发现代码都能跑,但是每个文件都会有_defineProperties、_createClass之类的定义代码。想请教一下怎么优化这些代码,能把它们直接去掉或者移到单独的一个文件中去吗?

我用@babel/runtime和@babel/plugin-transform-runtime试过,但是它们好像都是在工程化环境中引用core-js之类的相关工具包,如果在浏览器能不能也全局引用一下所有的工具代码库,然后去掉每个文件的冗余定义呢?

我知道webpack之类的工具能帮你打包处理相关文件引入的问题,但是如果不依赖其它工具能解决吗,感觉babel自身应该有相关的配置,有哪位Babel大佬知道怎么配置的吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

红玫瑰 2022-09-18 21:13:03

嗯,终于解决了。
先要安装一个处理编译helpers方法的插件:

npm install --save-dev babel-plugin-external-helpers

并写入配置:

{
  "plugins": ["external-helpers"]
}

这样编译出的文件中就没有奇怪的那一坨了,
然后使用命令生成一个单独的工具库:

babel-external-helpers > ./babel-helpers.js

最后在浏览器中引入这个库就可以了。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文