我有一个在浏览器中运行的Web应用程序(LAMP堆栈)。该应用程序为用户提供了通过某些表单输入数据的功能。用户可以使用这些表单编辑现有记录并创建新记录。表单有许多混合SELECT元素(使用Selectize库),其中包含可供选择的选项列表以及根据需要添加新选项的功能。选项来自表单的先前条目以及预定义的值。
目前,每次用户打开表单时,无论是创建新记录还是编辑现有记录,我都会为每个字段调用AJAX查询,以检索该字段的一组选项。显然,这会占用大量数据,从而降低应用程序的速度,并且通常会使事情看起来比应加载的时间更长。
我认为在浏览器中缓存这些值(localStorage或IndexedDB)会是一个好主意,但我不确定保持缓存温暖的最佳方法。
如果每次保存表单时重新加载缓存的数据,则仅查看速度会增加,但每次用户编辑或创建新记录时都会引入相同的延迟。 (用户将像查看一样频繁地创建/编辑)。
此外,如果其他用户创建/编辑了在这些字段中引入新值的记录,则在创建/编辑记录之前,这些新值不会以当前用户的形式显示为选项,从而排除了该能力在保存之前从这些新值中选择。
为了让您了解比例,单个表单上最多有50个字段,必须填充不同的选项列表,字段中的选项数量范围从大约5到大约50。 / p>
我非常感谢如何提高性能的指导。如果缓存不是答案,请告诉我哪些是最佳做法。谢谢!