gpt4 book ai didi

javascript - Redux 繁重的工作 : where should I perform the download and saving to FS of multiple files?

转载 作者:行者123 更新时间:2023-12-04 19:49:25 25 4
gpt4 key购买 nike

我有一个 React+Redux 应用程序(使用 Electron 构建和分发),每天一次,在晚上的给定时间,应该下载多个文件并将其保存到用户的文件系统。

在我看来,API 调用和操作总数有点太多,无法在 reducer 中完成,所以我想问一下是否有更好的设计模式。

只是为了给你一个想法,下面是我完成这个任务应该执行的操作:

  1. [API 调用] 从远程服务获取文件夹列表
  2. 为每个文件夹[API调用],获取内容列表
  3. [FS]:验证本地内容是否存在以及是否与远程内容相同
    • [API 调用] 如果没有,下载内容
    • [FS] 将内容保存到文件系统

涉及的文件夹数量从 10 个到 30 个不等,内容很容易达到 100 个或更多。

要点:

  • 用户在此操作期间未使用该应用,因此不需要网络 worker 或其他异步黑魔法
  • 同步可以通过另一种语言的外部脚本来完成,但我宁愿将所有逻辑都放在一个应用程序中,以便于分发和设置
  • 上面标记为 [API 调用] 的所有点在我当前的设置中都是异步的,因此涉及一些重要的回调管理

关于我可以把这整堆代码放在哪里,同时仍然保持我的代码可读性和可维护性的想法?它应该是 reducer、action creator、容器组件、展示组件还是其他?

谢谢!

最佳答案

我会创建一个 redux-saga为了这个任务。查看自述文件,它很好地说明了它是什么。一开始可能很难理解,但最终您会得到易于阅读和测试的代码。

关于javascript - Redux 繁重的工作 : where should I perform the download and saving to FS of multiple files?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38771861/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com