美文网首页
小程序 rich-text 富文本的解析显示

小程序 rich-text 富文本的解析显示

作者: FSYu | 来源:发表于2020-06-29 11:02 被阅读0次

    wxml

    <rich-text nodes="{{text}}"></rich-text>
    

    js

    onShow: function() {
      var self = this;
        self.data.text = self.data.text.replace(/\<img/g, '<img style="width:100%;height:auto;display:block"')
        .replace(/em;/g,'rpx;')
        .replace(/<section/g, '<div').replace(/\/section>/g, '/div>');
        
        self.setData({
          text: self.data.text
        })
      }
    
    核心的处理代码
    self.data.text.replace(/\<img/g, '<img style="width:100%;height:auto;display:block"')
    /**
     * 此代码段处理目的为,匹配富文本代码中的 <img> 标签,并将其图片的宽度修改为适应屏幕
     * max-width:100%       --- 图片宽度加以限制,避免超出屏幕
     * height:auto          --- 高度自适应
     * display:block        --- 此代码,可以去掉图片之间的空白间隔,个人觉得好用
     */
    一般而言,我们使用的富文本编辑器(比如:UEditor),生成的 `HTML节点及属性` 大多数都可以进行解析
    测试中,发现对 `<section>` 标签不支持
    
    所以修改为:
    self.data.text = self.data.text.replace(/\<img/g, '<img style="width:100%;height:auto;display:block"')
        .replace(/em;/g,'rpx;')
        .replace(/<section/g, '<div').replace(/\/section>/g, '/div>');
    

    在这之前,我使用的是 wxParse解析富文本(最大的缺点是代码配置多,并且无疑多出了一部分源码资源,作者还不维护了)

    相关文章

      网友评论

          本文标题:小程序 rich-text 富文本的解析显示

          本文链接:https://www.haomeiwen.com/subject/ogcofktx.html