题目描述
现在项目中需要引入一个40多M的JS文件,
需要的时候,JS动态添加script
标签引入。
但每次Chrome
都是重新去获取一次,而不是缓存。然后我测试的Firefox
是没问题的。
相关代码
export function asyncLoadJs(url) {
return new Promise((resolve, reject) => {
const script = document.createElement('script')
script.type = 'text/javascript'
script.src = url
document.body.appendChild(script)
script.onload = () => {
resolve()
}
script.onerror = reject
})
}
asyncLoadJs('./static/vfs_fonts.min.js')
.then(() => {
})
.catch(() => {
})
浏览器截图
Chrome
Firefox
请问这是浏览器自身原因吗?
40 M,我滴个乖乖。。。。
你可以在你服务器比如 Nginx 对这个文件设置一下缓存就好了。