QIN2DIM / epic-awesome-gamer

🍷 Gracefully claim weekly free games and monthly content from Epic Store.
https://echosec.notion.site/Epic-7c74f1e29117420dbac5551e4b031f82?pvs=4
GNU General Public License v3.0
886 stars 364 forks source link

Feature: Empty the shopping cart before adding a new item #233

Closed CH3NGYZ closed 9 months ago

CH3NGYZ commented 9 months ago

实力有限, 只能写成这样啦, 我自测没问题 https://github.com/QIN2DIM/epic-awesome-gamer/issues/232#issue-1992082305 image

CH3NGYZ commented 9 months ago

b69a134a-ec3c-46de-af69-89e30797c0ac视频截取.webm

QIN2DIM commented 9 months ago

LGTM

做了一些微调:

  1. 修改了在任务启动前主动前往购物车 remove all cards 的动作。这个特性我在重构之前的版本里做过,这实际上是一个徒增功耗的操作,因为无论购物车有没有 cards,都会用掉两次加载网页的时间(从任意页跳到 cart 再跳到 promotions)。实际上可以在 workflow 正常行进到 /cart/ 页面时插入这段操作,节省时间。
  2. 相对地,我将 remove all cards 替换成了 move paid games to wishlist,并设置了一个兜底扫描,确保 click payment button 之前将所有付费游戏扫空,尽可能减少多余的硬编码等待时间。
  3. 我将 empty_cart 移到 CommonHandler,并作为 action component 插入到主线程工作流中。

Demo

e7a7b266-2baa-4cb8-a983-519e538b98f9.webm

CH3NGYZ commented 9 months ago

LGTM

做了一些微调:

  1. 修改了在任务启动前主动前往购物车 remove all cards 的动作。这个特性我在重构之前的版本里做过,这实际上是一个徒增功耗的操作,因为无论购物车有没有 cards,都会用掉两次加载网页的时间(从任意页跳到 cart 再跳到 promotions)。实际上可以在 workflow 正常行进到 /cart/ 页面时插入这段操作,节省时间。

  2. 相对地,我将 remove all cards 替换成了 move paid games to wishlist,并设置了一个兜底扫描,确保 click payment button 之前将所有付费游戏扫空,尽可能减少多余的硬编码等待时间。

  3. 我将 empty_cart 移到 CommonHandler,并作为 action component 插入到主线程工作流中。

Demo

e7a7b266-2baa-4cb8-a983-519e538b98f9.webm

好的好的,我实力有限再加上对项目不太熟,所以代码有些水土不服,哈哈