
正如之前在 ref: t/1144403#reply14 帖子中所提到的,我自己写了一个 S3 客户端,使用 Electron 作为 UI ,c++ 写的网络库。 目前已经基本完成。
但是最近遇到一个问题: 当我的远程“目录”中文件数量较多的时候,UI 会卡死。原因是我的 UI 中没有在 Table 中使用虚拟化技术。 网上找了一圈,目前 shadcn ui table 的 tanstack-virtualizer 一起工作的例子还没找见,去 shadcn ui 官方 issue 看了一下,有人问过类似问题,但是很长时间了依然没有解决方案。 这只是个引子,这里不讨论如何解决这个问题了。
所以最近在考虑是否应该使用 Qt QML 来重写我的这个工具, 主要有以下考虑:
我个人对于 Web 技术的掌握非常浅,大部分事件依赖 AI 给我的方案。AI 解决不了的,大概率我也解决不了
Electron 有点儿吃内存,打包大小也有些大。 感觉对与我这种工具来说,有点儿太重了。
我的 c++ 库暴露成 js 需要手动编写 napi wrapper ,也有点儿繁琐
4 )但是对于 QML 我也需要重新学习,但是预期这个性能会好很多。
5 )还多多少考虑到 nodejs/js 中依赖太多,水平质量层次不齐。
想知道,这里的大佬们如何看待这个问题。 提前谢过!
1 NoNewWorld 1 小时 18 分钟前 闲的话,可以试试 |
2 C64NRD 1 小时 15 分钟前 既然你不擅长 web 技术,那也不必犹豫了,just do it! |
3 spritecn 1 小时 9 分钟前 @NoNewWorld 写 s3 客户端的人应该不忙 |
4 weixind 1 小时 1 分钟前 写都写完了,迁移的收益其实不明显。 分页 + 搜索 或者上拉加载下一页就行了。没太必要传输所有的文件数据。 |
5 layxy 58 分钟前 虚拟列表的性能并不差,可以用支持虚拟列表的 ui 库试下,比如 vxe-table |
6 x007xyzabc 50 分钟前 是我的话,选择自己实现支持 tanstack-virtualizer 的表格 |
7 iugo 36 分钟前 Web 的生态非常丰富, 迁移到 Qt 可能有依赖相关的问题. |
8 masterclock 34 分钟前 QML 这种神经病还是算了吧 |
9 liaohongxing 31 分钟前 Web 大数据可以虚拟列表,但是看你会 c++ ,建议转 QT |
10 zhzy 30 分钟前 涉及到远程目录感觉问题应该不在 Electron ,QML 也没什么生态,建议不要改了,重新设计一下 UI 吧 |