我目前正在开发一个web应用程序,并且很难想到前端的设计。
在前端,用户可以输入1-n值,并将其拆分为1-nAPI调用。api进行2-10秒的处理,如果成功,则将其存储在数据库中。现在我只需要它,这样在提交时就不会更新UI,而当数据库更改时,UI就会反映出这一点。这无助于用户理解哪些输入失败或仍在加载。
我正在考虑的一种方法是立即添加到UI中,如果成功,就从本地状态删除它,因为它将自动从数据库状态呈现。如果它失败了,那么我们就把它保存在本地存储中,这样它就会持续更新。如果在刷新时,它从本地状态检测到服务器状态有一些失败的值,那么它将从本地状态中删除。这是标准的方法,还是这样的系统有更好的设计?
我看到的一个问题是,这可能会破坏真理原则的单一来源。
发布于 2020-10-25 12:28:27
我看你怀疑想出你自己的特别的“状态缓存本地存储”解决方案是一个好主意,这个问题已经被其他人解决了100次,你是对的。
对于您正在使用的技术堆栈来说,最好采用什么是最佳实践。如果你不知道如何使用你拥有的工具,就继续研究这些工具吧。每个应用程序框架都有自己的方法,一旦数据库中的数据被更改,如何更新UI。如果您不使用任何应用程序框架,那么就该开始了。
https://softwareengineering.stackexchange.com/questions/418289
复制相似问题