当前位置:   article > 正文

微信小程序 rich-text组件中图片点击放大与自适应大小问题_微信小程序 rich-text 图片大小

微信小程序 rich-text 图片大小

在ts文件中

  1. data: {
  2. // 文本内容
  3. content:'' ,
  4. // 图片列表
  5. imgArr:[]
  6. },
  7. // 获取富文本内容
  8. getRichContent(initForm:object){
  9. getRichContentApi(initForm).then((res:any)=>{
  10. const { data, msg, result} =res
  11. if(result==1){
  12. let mycontent = JSON.parse(JSON.stringify(data.content))
  13. // 解决图片自适应
  14. mycontent = mycontent.replace(/\<img/gi, '<img width="100%" height="auto"');
  15. // 解决图片之间的空隙
  16. mycontent = mycontent.replace(/style=""/gi, 'style="display:block; width="100%"; height="auto""');
  17. // 主要代码为后面预览图片准备
  18. let imgArr = [];
  19. let regex = new RegExp(/<img.*?(?:>|\/>)/gi); // 匹配所有图片
  20. let srcReg = /src=[\'\"]?([^\'\"]*)[\'\"]?/i; // 匹配src图片
  21. let arrsImg = mycontent.match(regex); // mycontent 后台返回的富文本数据
  22. for (let i = 0; i < arrsImg.length; i++) {
  23. let srcs = arrsImg[i].match(srcReg);
  24. imgArr.push(srcs[1])
  25. }
  26. this.setData({
  27. content : mycontent,
  28. imgArr
  29. })
  30. }else{
  31. wx.showToast({
  32. title:msg,
  33. icon:'none'
  34. })
  35. this.setData({
  36. content : ''
  37. })
  38. }
  39. })
  40. },
  41. // 点击放大预览图片函数
  42. catchImage(e:any){
  43. console.log(this.data.imgArr);
  44. wx.previewImage({
  45. current: this.data.imgArr[0], // 当前显示图片的http链接
  46. urls: this.data.imgArr // 需要预览的图片http链接列表
  47. })
  48. },

在wxml文件中

<rich-text nodes="{{content}}" space="ensp" catchtap="catchImage"></rich-text>

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/221169
推荐阅读
相关标签
  

闽ICP备14008679号