首页 / 缓存 / Vue+mui实现图片的本地缓存
Vue+mui实现图片的本地缓存
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Vue+mui实现图片的本地缓存,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2465字,纯文字阅读大概需要4分钟。
内容图文
这篇文章主要介绍了Vue+mui实现图片的本地缓存的实例代码,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下下面一段代码给大家分享基于Vue+mui实现图片的本地缓存,具体代码如下所示:
const menu = { state: { products: {}, GLOBAL_CONFIG:GLOBAL_CONFIG['GLOBAL_CONFIG'] }, mutations: { get_product: function (state, products) { //商品列表 state.products = products; for(let i = 0; i < state.products.length; i++){ if(state.products[i]['image'] != null){ // state.products[i]['image'] = state.GLOBAL_CONFIG['base64Header'] + state.products[i]['image']; //下载图片到本地 this.commit('imgCache',state.products[i]); }else{ //添加默认图片 state.products[i]['image'] = require("../assets/file.png"); } } }, imgCache: function (state,imgObj) { mui.plusReady(function(){ // 1. 转换网络图片地址为本地缓存图片路径,判断该图片是否存在本地缓存 // http://...jpg -> md5 // 缓存目录 _downloads/image/(md5).jpg let image_url = imgObj.image; let image_md5 = md5(image_url); // 缓存本地图片url let local_image_url = '_downloads/image/'+image_md5+'.jpg'; // 平台绝对路径 let absolute_image_path = plus.io.convertLocalFileSystemURL(local_image_url); console.log(absolute_image_path); // 判断本地是否存在该文件,存在就就直接使用,否则就下载 plus.io.resolveLocalFileSystemURL( absolute_image_path, function( entry ) { if(entry){ imgObj.image = plus.io.convertLocalFileSystemURL(local_image_url); }else{ download_img(); } }, function ( e ) { console.log("Resolve file URL failed: "); download_img(); } ); function download_img(){ // filename:下载任务在本地保存的文件路径 let download_task = plus.downloader.createDownload(image_url, { filename: local_image_url }, function(download, status) { // 下载失败,删除本地临时文件 if(status != 200){ console.log('下载失败,status'+status); if(local_image_url != null){ plus.io.resolveLocalFileSystemURL(local_image_url, function(entry) { entry.remove(function(entry) { console.log("临时文件删除成功" + local_image_url); // 重新下载图片 download_img(); }, function(e) { console.log("临时文件删除失败" + local_image_url); }); }); } }else{ // 把下载成功的图片显示 // 将本地URL路径转换成平台绝对路径 console.log("下载成功" + local_image_url); imgObj.image = plus.io.convertLocalFileSystemURL(local_image_url); } }); download_task.start(); } }); } }, actions: { } }
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!
相关推荐:
分析vue-cli中模拟数据的两种方法
关于VUE中常用的几种import(模块、文件)引入方式的介绍
vue 设置路由的登录权限的方法
以上就是Vue+mui实现图片的本地缓存的详细内容,更多请关注Gxl网其它相关文章!
内容总结
以上是互联网集市为您收集整理的Vue+mui实现图片的本地缓存全部内容,希望文章能够帮你解决Vue+mui实现图片的本地缓存所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。