有件事你可能不知道,用微信自带的浏览器看那些H5的时候,只要长按图片,就会蹦出来个“下载图片”的按钮!不过微信小程序可没那么好用还得咱们自己动手。其实两步完事儿:先用力按住图中那个“Img”标记,然后果断点击“下载图片”,这样你心爱的图片就能瞬间保存在手机里~
好奇,微信小程序咋就会长按了呢?有啥方法能轻松搞定吗?
瞧!微信里面就能搞定了,就是那个叫做bindlongpress的小玩意儿。你还不会用这东西?真是太简单了!赶紧试试看~
下个问题就是问怎能把保存的图放本地?有啥子接口可用吗?
Page({ /** * 页面的初始数据 */ data: { url:"https://wechat.weixinzjit.com/costa/public/uploads/images/20190109/67b16149693920598435315fd0d5ab3e.jpg" }, // 长按保存图片 saveImg(e){ let url = e.currentTarget.dataset.url; wx.saveImageToPhotosAlbum({ filePath:url, success(res) { console.log(res); }, fail(res){ console.log(res); } }) } })
没错,微信小程序里边儿有个特别厉害的家伙叫wx.saveImageToPhotosAlbum(),能帮你把想存的图直接保存到手机相册,简直不要太好用了哟~
我们都懂按住和存图到手机这事,但有时候咋没动静?是设备出毛病了吗?
首先搞定两个小事别搞忘上传图片这事,得问问人家愿不愿意!以前咱们就谈过这个访问权限问题,按着那个学就是了。
在搞定图的连接以后,这还有个小贴士,那就是别傻乎乎地直接照搬网上别人的图的网址。放心,我这有一神器叫做wx.getImageInfo (), 这个东西能把网上的图地址变成咱们自己的。下面,用wx.saveImageToPhotosAlbum ()就能轻轻松松地丢进手机相册了
所以,整体的代码就是这样子的:
wx.getSetting({ success: (res) => { if (!res.authSetting['scope.writePhotosAlbum']) { wx.authorize({ scope: 'scope.writePhotosAlbum', success:()=> { // 同意授权 }, fail: (res) =>{ console.log(res); } }) }else{ // 已经授权了 } }, fail: (res) =>{ console.log(res); } })
不懂就问我。其实,就在微信小程序里面存个图片而已,很容易滴事情。绑定好账号后就长按,接着调用那个wx.saveImageToPhotosAlbum()函数就OK了。但提醒你喔,一定要确保用户已经授权过咯,可不能随便输入网上提供的地址
伙计们,我来给大家帮忙。想聊天的就这儿聊咱们一块进步!别忘了给俺点个赞哼~
wx.getImageInfo({ src: url, success:(res)=> { let path = res.path; wx.saveImageToPhotosAlbum({ filePath:path, success(res) { console.log(res); }, fail:(res)=>{ console.log(res); } }) }, fail:(res)=> { console.log(res); } })
原文链接:https://www.icz.com/technicalinformation/web/2024/03/11321.html,转载请注明出处~~~
评论0