需求:数据通过ajax加载成功后,如果用户刷新页面何如缓存已经请求完成的数据呢?而不是再次请求后端数据。兼容IE8及以上
可以将数据存在localStorage
或者sessionStorage
, 然后判断如果缓存有数据的话直接取缓存的数据,否则去请求数据
if(localStorage.cacheData){
this.data = localStorage.cacheData
}else {
fetchData().then(res => {
...请求数据
})
}
简单点可以用cookie,当前最兼容的模式,不过容量有点少
如果可能还是在localStorage或者sessionStorage更好
如果开发app,则可以自己写本地文件、数据库等。
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答5.2k 阅读✓ 已解决
1 回答3.4k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
要兼容ie8那就放到
cookie
中吧。localstorage
不知道兼容ie8不,自己查一下。IE9及其以上是兼容的。