gpt4 book ai didi

javascript - 预加载 cdn 缓存文件

转载 作者:行者123 更新时间:2023-11-28 03:32:57 26 4
gpt4 key购买 nike

我有一个文件缓存在某些 CDN 中。

在我的本地环境中,您可以在浏览器中读取标记为

<script src="/js/cool.js"></script>

但是一旦投入生产,它就会像这样:

<script src="/js/cool.js.pagespeed.ce.l2D9mD1nmX.js"></script>

.pagespeed.ce.l2D9mD1nmX.js意味着它正在被缓存

现在我想知道预加载已经缓存在 cdn 中的文件是否明智或做法?

因为我正在做

<link rel="preload" type="application/javascript" href="/js/cool.js" as="script">

在我的<head>这会给我警告:

资源(预加载文件)已使用链接预加载进行预加载,但在窗口加载事件发生后的几秒钟内未使用。请确保它具有适当的 as值并且是有意预加载的。

因为从技术上来说/js/cool.js dom 中不再存在

最佳答案

Use a preload plugin in your module bundler.

问。预加载已经缓存在 cdn 中的文件是否是明智的做法?

A.是的,确实如此,假设您的 cool.js 实际上需要预加载。

<小时/>

现在,警告实际上是预期的。请参阅,cool.js.pagespeed.ce.l2D9mD1nmX.jscool.js 是服务器上的两个不同文件。您的文件 cool.js.pagespeed.ce.l2D9mD1nmX.js 实际上是由您的 module-bundler 生成的 code.js 的克隆。对于某些reasons 。您正在做的是预加载 cool.js,其代码永远不会在生产中执行,因此会出现警告 - ...使用链接预加载进行预加载,但在启动后几秒钟内未使用窗口的加载事件。但是,您实际需要做的是预加载 cool.js.pagespeed.ce.l2D9mD1nmX.js。假设您正在使用 webpack作为您的模块 bundler ,您需要一个名为 preload-webpack-plugin 的插件达到同样的目的。

关于javascript - 预加载 cdn 缓存文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58003510/

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