小程序富文本如何解析?

595 阅读1分钟

一共有俩种方法请看如下:

method1:利用wxParse来解析

  • 首先需要我们查看github得相关文档  地址:https://github.com/icindy/wxParse/tree/master/wxParse 我们可以访问一下
  • 我们可以看看里面文件下面得提示步骤来写
  • 下载里面得那个文件复制里面得 wxParse文件夹到我们写得小程序
  • 设置全局样式

    /**app.wxss**/
    @import "./wxParse/wxParse.wxss";
    
    

  • 在需要调用插件的页面中引入js

var WxParse = require('../../wxParse/wxParse.js');

  •   声明一个你想解析得html文本

    var article = "<p>我是p标签</p>"

  • 直接在方法中使用

     onLoad: function (options) {
    const that = this; /*** WxParse.wxParse(bindName , type, data, target,imagePadding)
    * 1.bindName绑定的数据名(必填)
    * 2.type可以为html或者md(必填)
    * 3.data为传入的具体数据(必填)
    * 4.target为Page对象,一般为this(必填)
    * 5.imagePadding为当图片自适应是左右的单一padding(默认为0,可选)*/ 
    var temp = WxParse.wxParse('article', 'html', data, that, 5); 
    },
    ————————————————
    版权声明:本文为CSDN博主「晏金煜」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/qq_36423639/article/details/80403269

  • 在wxml文件里

     <import src="/wxParse/wxParse.wxml"/><template is="wxParse" data="{{wxParseData:article.nodes}}"/>

  • 富文本解析完成  

method2:

利用微信小程序里直接添加得

<rich-text nodes="{{nodes}}"></rich-text>   //node就是微信小程序直接定义得

比如说请求数据得时候

 wx.request({       url: `https://api.it120.cc/lqi/shop/goods/detail?id=${id}`,       method:"GET",       header:{         'content-type':'aplication/text'       },       success:res=>{         wx.hideLoading()         if(res.statusCode===200){         //console.log( res.data.data)         this.setData({          nodes:res.data.data.content.replace(/\<img/gi, '<img style="max-width:100%;height:auto"'),          detail:res.data.data         })         }       }     })

注意得问题:设置样式得问题利用replace得方法

比如说要设置图片得样式:

this.setData({          nodes:res.data.data.content.replace(/\<img/gi, '<img style="max-width:100%;height:auto"'),          detail:res.data.data })

第二种方法特别简单,你们怎么看呢?