Qt 嵌入Vue项目 flapMap 浏览器兼容性问题

最近有个需求,Qt工程需要嵌入vue项目,本来是很简单的事情。在我的PC上启动Vue项目,同事PC上用浏览器通过IP地址可以正常加载vue项目,但用Qt嵌入总是失败。问题定位步骤如下:

1)换了一个简单的vue项目,发现没有问题,Qt工程能正常加载vue项目

2)由于Qt不像浏览器那样可以console,或断点定位,所以采用加alert 的方法来定位,最后定位到调用flatMap方法的地方有问题。flapMap是es6语法,猜测是由于Qt自集成的chrome版本低导致,所以升级Qt版本到6, 问题解决。

3)由于整个项目是在Qt 低版本开发的,不想采用升级Qt版本来解决。所以修改vue项目来解决。

Vue项目Babel 会把es6语法polyfill 呀, 怎么对flatMap没起作用?

看了一下vue项目根目录下的.browserslistrc 文件, 并没有对chrome版本进行设置,故增加一行代码解决:Chrome > 55

4).browserslistrc 解读

Browserslist 帮助我们在浏览器兼容性和包大小之间保持适当的平衡。使用 Browserslist,可以做到覆盖更广泛的受众(浏览器),同时包的体积也会保持最小化。

在vue项目根目录运行npx browserslist 可以查看支持的浏览器。

Autoprefixer、babel-preset-env 等前端工具会使用.browserslist配置来生成适当的CSS和JavaScript代码。

5)通过前面分析得出问题根本原因。vue项目采用.browserslistrc默认配置,没有限定chrome浏览器版本,babel转换后生成的js代码需要的浏览器版本高于Qt自集成的chrome版本。

相关推荐
笨笨狗吞噬者31 分钟前
VS Code 内置浏览器打开网页
前端
SamChan9031 分钟前
WebSocket实现PDF翻译进度实时推送:Go后端+React前端的完整方案
前端·websocket·pdf·c#·react·机器翻译
甲维斯44 分钟前
DeepSeekFlash前端依旧拉垮,而且变慢了很多!
前端·人工智能
奈斯先生Vector1 小时前
大模型 Agentic Workflow 架构解构:异构 API 调度与 Token 路由的多模态系统设计
开发语言·前端·架构·prompt·aigc·音视频
海带紫菜菠萝汤1 小时前
FFmpeg.wasm 实践:在浏览器中运行 FFmpeg 的能力边界与性能瓶颈
前端·javascript·ffmpeg·音视频·wasm
名字还没想好☜1 小时前
React 受控输入框光标跳到末尾:格式化输入时的 selection 丢失 bug 与修复
前端·javascript·react.js·bug·react·next.js
Access开发易登软件1 小时前
Access 怎么做前后端分离?用 Web API 读写 SQL Server
前端·数据库·人工智能·microsoft·excel·access
10share1 小时前
React 新一代样式隔离方案 —— 编译时、零运行时、原生写法
前端·react.js
Revolution611 小时前
Node.js 是什么:前端项目里哪些事情由它完成
前端·面试·node.js
Richard.Wong2 小时前
qt生成dll供C#调用
开发语言·qt