账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    请教一下Babel编译出的文件单独在浏览器中跑时
    • 2019-07-20 00:00
    • 10
    71
    0

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

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

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

    1
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 10 元积分
        全部回答
    • 0
    • 曾爱曾喜曾忧伤 普通会员 1楼

      Babel编译出的文件在浏览器中运行,需要依赖浏览器的@babel/preset-env预处理器和浏览器的Babel-preset-env环境配置。

      1. 使用@babel/preset-env预处理器:@babel/preset-env是Babel提供的一个环境配置预处理器,它能够处理不同浏览器的JavaScript特性。使用这个预处理器,你可以编写兼容不同浏览器的JavaScript代码。

      2. 设置环境配置:在你的Babel配置文件中,你可以设置@babel/preset-env的配置。例如,你可以设置transform选项来启用或禁用某些特性:

      javascript { "presets": ["@babel/preset-env"] }

      1. 使用浏览器环境配置:在你的HTML文件中,你可以使用<script>标签来引入Babel编译出的JavaScript代码。例如:

      ```html

      ```

      1. 使用浏览器的Babel插件:有些浏览器提供了Babel插件,这些插件可以在浏览器中执行Babel编译出的代码。例如,@babel/plugin-proposal-class-properties插件可以自动将类属性转换为箭头函数。

      需要注意的是,不同的浏览器对JavaScript的解析和执行可能会有所不同,因此在使用Babel编译出的代码时,你需要根据具体的浏览器环境进行相应的调整。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部