iOS: WKWebView没有立即加载本地JS文件

iOS: WKWebView does not load local JS files immediately

我正在通过 loadHTMLstring 方法将两个 JS 文件加载到 WKWebView 中。脚本嵌入在应用程序中,因此不会执行任何 HTTP 调用。第一个脚本加载在 head 标签中。第二个是内联。这是针对 Lottie 网络播放器的:https://github.com/LottieFiles/lottie-player。因此,第一个加载 lottie-player.js 而第二个加载 lottie-player 元素之后的动画。

第二个脚本的作用类似于:

const player = document.querySelector("lottie-player");

// or load via a Bodymovin JSON string/object
player.load(
  '{"v":"5.3.4","fr":30,"ip":0,"op":38,"w":315,"h":600,"nm":"new", ... }'
);

一切正常(即动画加载和播放)。我面临的问题是在动画变得可见之前大约需要 1 秒,因此 WKWebView 似乎不会立即加载脚本。有没有办法解决这个问题?我使用的是默认 WKWebViewConfiguration.

WKWebView 初始化和第一次加载很慢。最好在加载包含 WKWebView 的视图控制器之前初始化和加载 WKWebView。您可以使用下面的项目来检查他们是如何实现这一点的,以供您参考,并且他们还比较了加载时间。

https://github.com/bernikovich/WebViewWarmUper

也希望加载动画不要太花时间。