MaaAssistantArknights / maa-copilot-frontend

MAA Copilot Frontend
https://prts.plus
68 stars 50 forks source link

Guan/temp1 #52方案 #252

Closed Gemini2035 closed 6 months ago

Gemini2035 commented 7 months ago

新增/create侧边框快速编辑模块,实现功能:

  1. 干员的CRUD
  2. 干员组的CRUD
  3. 基于已选择干员的职业分支提供推荐分组
  4. 收藏干员组(数据存本地,按用户id分类)
  5. 从wiki上下载职业图标,但分支图标效果不好,职业图标更是一团遭,其实可以考虑放弃职业图标用bp的icon代替,至少风格统一(

改动较大,但这次有信心(

guansss commented 7 months ago

还没有看代码,这里是使用体验上一些也许可以改进的地方(

  1. 可以让右栏的职业只显示图标,左栏的分支只显示文字,因为职业图标辨识度很高,而且游戏里也是这么显示的,而对于分支来说是文字辨识度比较高 image

  2. 收藏分组最好允许直接在列表里删除,比较符合直觉

  3. 干员列表建议改为竖向滚动,因为在网页上竖向滚动会比较自然,而且用 js 模拟滚动的体验比不上浏览器自带的平滑滚动

  4. 干员组卡片是 interactive 的,但是点击后并没有对应的功能,可以改为点击后展开/折叠,或者去掉 interactive image

  5. “未设置技能”建议只显示在已选择的干员上,这样整个列表会比较简洁 image

  6. “分组”需要改为“干员组” image

Gemini2035 commented 7 months ago

自测了一下,发现了bug,同时说一下近期进度和更新计划

bug: 收藏干员时表现不稳定,可能是数据没有隔离,空了再详细测测

progress: 修改了六个之前提到的体验优化

plan: 干员组部分的滚动优化,准备尽量整合到一个页面上 修bug ToT

Gemini2035 commented 7 months ago

更新完毕,除开提到过的六个修改点之外的主要修改点:

  1. 简化sheet的页面滚动,简单来说就是最多只看得到两个滚动条(
  2. 修复了收藏干员组表现不稳定的bug,原因为组件未正确更新(useMemo一把梭,结果梭出问题了
  3. 优化了干员全选功能
  4. 可能存在风险的点:sheet部分功能几乎是独立的,但是使用了EditorPerformer.tsx中封装好了的submitOperator、submitGroup函数。为了同时适配两个部分,添加了fromSheet参数,并把setError改为了可选。自测了一下没有发现问题
Gemini2035 commented 7 months ago

修改完毕, 不过eventHandleProxy问题关于适合react模式那个部分看得不是很明白,能否详细说说。当时这么处理的思路是方便功能的集中管理,将多个功能集中在一个函数上。类似于redux reducer那种 所以暂时没有改那一部分的代码,只是增强了一下类型约束 最后,新年快乐 ;-)

Gemini2035 commented 6 months ago

嗯嗯,理解到了。不过暂时只改了后面的及格问题。eventProxyHandle后续慢慢会改(会改的!确信

Gemini2035 commented 6 months ago

嗯嗯,理解到了。不过暂时只改了后面的及格问题。eventProxyHandle后续慢慢会改(会改的!~确信~)

本来摆了,结果写上头了,最后还是把eventProxyHandle拆成单个单个的功能函数了(

guansss commented 6 months ago

Nice work! 感谢贡献,我拉下来合并一下