2025-01-20 创建于墨问
小程序缓存字体文件
2025年3月5日 更新:
可以使用 dataURI 的方式来加载数据
流程为:
downloadFile -> readFile -> base64 -> dataURI -> wx.loadFontFace
代码片段:
developers.weixin.qq.com/s/V6lZZomL7…
2025年3月3日 更新:
小程序有 bug 截止基础库 3.7.8,具体表现如下:
-
移动端 webview 渲染:请求 2 次,其中一个请求可以协商缓存,另一个不能
-
移动端 skyline 渲染:请求 2 次,都可以协商缓存
-
PC 端:表现正常,请求 1 次,有缓存时不发请求
需要设置字体文件的 HTTP 响应头
例如 max-age=518400
目前两种加载字体的方式:
-
wx.loadFontFace
-
css @font-face
webview 渲染引擎中,css 的方式无缓存,小程序每次冷启动都会下载字体文件,推荐使用 wx.loadFontFace
skyline 渲染引擎中,两种方式都有缓存
代码片段: