Redux重载:我应该在哪里执行多个文件的下载并保存到FS
Redux heavy lifting: where should I perform the download and saving to FS of multiple files?
我有一个React+Redux应用程序(使用电子构建和分发(,每天一次,在晚上的某个特定时间,应该下载并保存多个文件到用户的文件系统。
API调用和操作的总体数量在我看来有点太多了,无法在减速器中完成,所以我在这里询问是否有更好的设计模式。
只是给你一个想法,以下是我应该执行的操作来完成这项任务:
- [neneneba API调用]从远程服务获取文件夹列表
- [API调用]为每个文件夹获取一个内容列表
- [FS]:验证本地内容是否存在以及与远程内容的版本是否相同
- [API调用]如果没有,则下载内容
- [FS]将内容保存到文件系统
涉及的文件夹数量从10个到30个不等,内容很容易达到100个或更多。
要点:
- 用户在此操作期间没有使用应用程序,因此不需要网络工作者或其他异步黑魔法
- 同步可以通过另一种语言的外部脚本来完成,但为了便于分发和设置,我宁愿将所有逻辑保留在一个应用程序中
- 上面标记为[API调用]的所有点在我当前的设置中都是异步的,因此涉及到一些非琐碎的回调管理
你知道我可以把这整堆代码放在哪里,同时保持代码的可读性和可维护性吗?它应该是减速器、动作创建者、容器组件、表示组件还是其他组件?
谢谢!
我会为这个任务创建一个redux传奇。查看自述文件,它很好地说明了它是什么。一开始可能很难理解,但最终你会得到一个易于阅读和测试的代码。
相关文章:
- 如何为使用 JSP 生成的下载文件显示“保存文件”对话框
- 如何使用javascript从url下载图像并将其保存到本地目录
- Highcharts使用javascript将图表保存在项目文件夹中,而不是下载文件夹中
- 将二进制数据保存在浏览器中,而不会在下载时进行 UTF8 编码
- 使用 PHP 和 JavaScript 在黑莓中下载和保存图像
- 使用 JavaScript 下载 xml 文件并将其保存在变量中
- Javascript和FF-addon:如何在不重新下载的情况下将图像保存到本地磁盘
- 禁用保存并在下载文件 ASP.NET 另存为
- CasperJS下载并将文件保存到特定位置
- 下载图片或在单击按钮时显示图片的保存弹出窗口
- 使用图像URL和PHP从远程服务器上传/下载/保存图像到本地服务器
- 如何下载apk并保存在移动内存中,而不是使用带有webIntent和fileApi的Phonegap SD卡
- 如何保存从服务器下载的视频
- 如何通过ajax将下载的文件保存在内存中
- 下载zip文件并触发“;保存文件“;对话框的角度方法
- windows8存储javascript应用程序,从web下载和保存图像
- 尝试从URL下载并用node.js保存到文件中.这是我的问题
- 减缓用户下载/保存html5视频的速度
- 开发工具控制台中的javascript可以下载/保存文件吗,或者这是沙盒化的
- 如何下载/保存用PHP生成的HTML页面的内容