微信小程序富文本rich-text使用详解-微信小程序系统学习攻略​

也许你迷茫,但是我想说,在你迷茫的同时,保持本心,过好今天就好。


在微信小程序开发中,rich-text 标签可以用来显示富文本 html内容,可以渲染部分html标签,全局支持class和style属性,但不支持id属性。

在这里插入图片描述

1 基本使用

一种最基本的应用场景就是从接口请求加载回来的 html 内容,显示到小程序页面上,常用商品详情等等。

首先,是 wxml 页面元素的使用

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

然后在 对应的 js 文件中


Page({

  /**
   * 页面的初始数据
   */
  data: {
    content:'<h1>这里是标题</<h1><p>这里是段落内容体系</p>',
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },
})
2 处理图片自适应问题
 /**
   * 例如加载商品详情
   */
  getdetail: function () {
    wx.request({
      url: '接口地址',
      data: {'参数key':''},
      header: {
        'content-type': 'application/json'
      },
      method: 'GET',
      responseType: 'text',
      success(res) {
        console.log(res);
        if (res.data.code === 0) {
          //返回的富文本数据
          var content = res.data.data.content;
          that.setData({
            //处理图片自适应问题
            /**
             * 此代码段处理目的为,匹配富文本代码中的 <img> 标签,并将其图片的宽度修改为适应屏幕
             * max-width:100%       --- 图片宽度加以限制,避免超出屏幕
             * height:auto          --- 高度自适应
             * display:block       
             */
            contentInfo: content.replace('<img ', '<img style="max-width:100%;height:auto;display:block;margin:10px 0;"')
          })
        } else {
          console.log('数据加载失败')
          wx.showToast({
            title: res.data.msg,
            duration: 2000
          })
        }
      },
    })
  }

完毕


小编也写了几本书,如果你有兴趣可以去看看


在这里插入图片描述

### UniApp `rich-text` 组件使用教程 #### 一、基础介绍 `rich-text` 是用于展示富文本内容的组件,在不同平台上的表现可能会有所差异。此组件支持 HTML 片段作为输入并将其渲染成相应的视图结构。 #### 二、属性说明 - **nodes**: 接收要渲染的内容字符串或对象数组,可以是纯文本也可以包含标签。 - **space**: 设置节点间的间距,默认值为'normal';可选参数有 'ems', 表示按照 em 单位来设置间距大小[^1]。 #### 三、样式应用技巧 对于某些特定场景下遇到的样式问题,比如内联样式的失效情况,可以通过全局配置过滤器的方式给指定标签添加额外 CSS 类名来进行样式覆盖: ```javascript export function richTxtFilter(content) { if (!content) return ''; let val; // 替换 p 标签为其加上自定义类名 "rich-txt-p" val = content.replace(/<p/gi, '<p class="rich-txt-p"'); return val; } ``` 上述代码片段展示了如何通过正则表达式替换原有 `<p>` 开始标记,从而达到为目标元素附加新类的效果[^3]。 #### 四、跨平台兼容性注意事项 由于各平台对原生能力的支持程度不尽相同,因此在开发过程中需要注意测试各个目标环境下的行为一致性。例如,在百度小程序中可能出现无法正确解析HTML的情况,此时建议检查是否有特殊字符未被转义等问题存在[^4]。 #### 五、多媒体资源加载失败处理 当发现图片或其他媒体文件未能成功显示时,应确认这些外部链接是否能够正常访问以及路径是否正确无误。另外还需注意部分框架版本可能存在已知缺陷影响到此类功能正常使用,及时更新至最新稳定版往往能解决问题所在[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

早起的年轻人

创作源于分享

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值