gpt4 book ai didi

javascript - 使用 .js 文件缓存大型下拉列表

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:07:37 25 4
gpt4 key购买 nike

我想将大型 UI 列表的内容缓存在客户端,并根据标准或定期更新。然后客户端代码可以只在本地填充下拉菜单,避免页面下载时间过长。

这些列表可能接近 4k 项,并且在没有缓存的情况下动态过滤它们会导致几次相当大的往返。

我该怎么做?我的意思是,什么样的模式和策略适合这种情况?

最佳答案

JSON 的积极缓存适用于此,您只需对 JS 文件进行哈希处理并将其放在其 URL 的末尾,以便在它发生变化时对其进行更新。一个修订可能如下所示:

/media/js/ac.js?1234ABCD

当文件改变时,散列也会改变。

/media/js/ac.js?4321DCBA

这样,当客户端加载页面时,您的服务器端代码链接到散列 URL,客户端将在下一次加载页面时收到 304 Not Modified 响应(假设您在服务器上启用了此功能)。如果你使用这种方法,你应该将文件设置为永不过期,因为“过期”部分将由散列处理,即,当 JS 文件确实过期时,散列将改变并且客户不会得到 304,而是 200。

ac.js 可能包含一个列表或其他可迭代对象,您的自动完成代码可以将其解析为完成池,您可以像访问任何其他 JS 变量一样访问它。


但实际上,对于大多数项目来说,这不是必需的。使用诸如 memcached 服务器端和 gzip 压缩之类的东西将使文件既小又加载速度惊人。如果列表很大(比如成千上万的项目),您可能需要考虑这一点。

关于javascript - 使用 .js 文件缓存大型下拉列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2805637/

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