vue3 antd rsbuild适配低版本谷歌(基于chrome56)

vue3 antd rsbuild项目需要做的适配工作(基于chrome56)

注意:以下所有选项必须都执行

1. browserslistrc配置:在根目录新建.browserslistrc文件,内容如下

Text 复制代码
chrome >= 55
> 0.5%
not dead
IE 11

2. polyfill配置:rsbuild.config.ts文件中添加配置:

typescript 复制代码
 output:{
    polyfill: 'entry',
    ...  // 其他配置
  },

3.ant design vue兼容: 在APP.vue文件中添加以下代码

vue 复制代码
<template>
  <div class="router-view-box">
    <StyleProvider hash-priority="high" :transformers="[legacyLogicalPropertiesTransformer]">
      <ConfigProvider :locale="locale">
        <router-view />
      </ConfigProvider>
    </StyleProvider>
  </div>
</template>
<script lang="ts" setup>
import { ConfigProvider,StyleProvider,legacyLogicalPropertiesTransformer } from 'ant-design-vue';

</script>

4. axios降级为 0.27.2版本

shell 复制代码
pnpm install [email protected]
  • 重新启动项目
  • 请求中包含如下配置:headers: { "Content-Type": "application/x-www-form-urlencoded",}的方法,将参数拼接到url后面,而不是放在请求体中,因为低版本axios不支持直接根据请求体和content-type来解析参数。

5. 样式写法兼容,

  • 对于flex布局里的gap等类似的css属性,换一种方式实现。
  • 所有十六进制格式的颜色,注意透明度不能作为十六进制写到颜色里否则静态无法解析,改用rgba的格式即可正常解析

6. 细节排查

  • 发现document.querySelector('.main-box').scroll无法正常运行,因为scroll方法的支持范围为
Text 复制代码
Chrome:支持(Chrome 61+)。
Firefox:支持(Firefox 36+)。
Safari:支持(Safari 10.1+)。
Edge:支持(Edge 79+)。
IE:不支持。

解决办法:换一种实现方式

javascript 复制代码
// document.querySelector('.main-box')!.scroll({
//     left: document.querySelector('.main-box')!.scrollLeft - distance,
//     behavior: 'instant'
// })

//上面的写法换为
document.querySelector('.main-box')!.scrollLeft = document.querySelector('.main-box')!.scrollLeft - distance
相关推荐
llc的足迹8 分钟前
el-menu 折叠后小箭头不会消失
前端·javascript·vue.js
九月TTS38 分钟前
TTS-Web-Vue系列:移动端侧边栏与响应式布局深度优化
前端·javascript·vue.js
Johnstons40 分钟前
AnaTraf:深度解析网络性能分析(NPM)
前端·网络·安全·web安全·npm·网络流量监控·网络流量分析
whatever who cares1 小时前
CSS3 伪元素(Pseudo-elements)大全
前端·css·css3
若愚67921 小时前
前端取经路——性能优化:唐僧的九道心经
前端·性能优化
Bl_a_ck2 小时前
开发环境(Development Environment)
开发语言·前端·javascript·typescript·ecmascript
田本初2 小时前
使用vite重构vue-cli的vue3项目
前端·vue.js·重构
ai产品老杨2 小时前
AI赋能安全生产,推进数智化转型的智慧油站开源了。
前端·javascript·vue.js·人工智能·ecmascript
帮帮志2 小时前
vue实现与后台springboot传递数据【传值/取值 Axios 】
前端·vue.js·spring boot
xixingzhe23 小时前
Nginx 配置多个监听端口
服务器·前端·nginx