微信小程序显示后台文章副文本,图片和视频正常显示

news/2025/1/15 17:26:54/

解决方案:

  1. 使用 wxParse 或 rich-text 组件: 这两种方式可以解析 HTML 字符串并渲染富文本内容,包括图片和视频。

  2. 数据处理: 将后台返回的富文本数据进行处理,提取出图片和视频的链接,并将其转换成小程序支持的格式。

方案一:使用 rich-text 组件 (推荐)

优点:

  • 无需引入第三方库
  • 小程序原生支持,性能更优

代码示例:

<!-- pages/article/article.wxml -->
<view class="container"><rich-text nodes="{{articleContent}}"></rich-text>
</view>
// pages/article/article.js
Page({data: {articleContent: "",},onLoad: function (options) {this.getArticleDetail(options.id);},getArticleDetail: function (articleId) {// 模拟数据请求wx.request({url: `your-api-url/${articleId}`, // 替换成你的接口地址success: (res) => {const articleContent = this.processArticleContent(res.data.content);this.setData({articleContent,});},});},// 处理文章内容,将图片和视频链接转换为小程序支持的格式processArticleContent: function (content) {// 使用正则表达式匹配图片和视频链接const imgReg = /<img.*?src="(.*?)".*?>/g;const videoReg = /<video.*?src="(.*?)".*?>/g;// 替换图片链接content = content.replace(imgReg, (match, src) => {return `<image src="${src}" mode="widthFix"></image>`;});// 替换视频链接content = content.replace(videoReg, (match, src) => {return `<video src="${src}" controls></video>`;});return content;},
});

方案二:使用 wxParse 第三方库

优点:

  • 功能强大,支持更多 HTML 标签和样式
  • 使用简单,容易上手

步骤:

  1. 安装 wxParse:

    npm install wxParse
    
  2. 引入 wxParse:

    在需要使用 wxParse 的页面对应的 .js 文件中引入:

    var WxParse = require('../../wxParse/wxParse.js'); 
    // 将路径替换成 wxParse.js 文件在你项目中的实际路径
    
  3. 使用 wxParse 解析富文本:

    // pages/article/article.js
    Page({data: {},onLoad: function (options) {this.getArticleDetail(options.id);},getArticleDetail: function (articleId) {wx.request({url: `your-api-url/${articleId}`, // 替换成你的接口地址success: (res) => {// 使用 wxParse 解析富文本内容WxParse.wxParse('article', 'html', res.data.content, this, 5);},});},
    });
    
  4. 在 wxml 中渲染:

    <!-- pages/article/article.wxml -->
    <view class="container"><template is="wxParse" data="{{wxParseData:article.nodes}}"/> </view>
    

注意:

  • 以上两种方案都需要根据实际情况对图片和视频链接进行处理,确保链接格式正确且资源可访问。
  • 建议使用 HTTPS 链接,以避免在小程序中出现安全警告。
  • 使用 wxParse 需要注意版本兼容性问题。

希望以上信息能够帮助你!


http://www.ppmy.cn/news/1521957.html

相关文章

数据库学习01——mysql怎么创建数据库和表

第一步&#xff1a;创建数据库 使用 create database 语句&#xff0c;后跟要创建的数据库名称&#xff1a; CREATE DATABASE dbname;例如&#xff0c;要创建名为 my_db 的数据库&#xff0c;请输入&#xff1a; CREATE DATABASE my_db ;使用 show databases; 语句检查数据库是…

第十六篇:走入计算机网络的传输层--传输层概述

1. 传输层的功能 ① 分割与重组数据 一次数据传输有大小限制&#xff0c;传输层需要做数据分割&#xff0c;所以在数据送达后必然也需要做数据重组。 ② 按端口号寻址 IP只能定位数据哪台主机&#xff0c;无法判断数据报文应该交给哪个应用&#xff0c;传输层给每个应用都设…

Java基础 ——线程

多线程 并行和并发 需求&#xff1a;边打英雄联盟和边听音乐 问题&#xff1a;只能先后关系&#xff0c;并不能同时发生 多进程或者多线程来解决 并行和并发&#xff1a; 并行&#xff1a;多件事情在同一时刻发生 并发&#xff1a;多件事情在同一时间段发生&#xff0c;同一…

无线信道中ph和ph^2的场景

使用 p h ph ph的情况&#xff1a; Rayleigh 分布的随机变量可以通过两个独立且相同分布的零均值、高斯分布的随机变量表示。设两个高斯随机变量为 X ∼ N ( 0 , σ 2 ) X \sim \mathcal{N}(0, \sigma^2) X∼N(0,σ2)和 Y ∼ N ( 0 , σ 2 ) Y \sim \mathcal{N}(0, \sigma^2)…

回归预测 | Matlab基于贝叶斯算法优化XGBoost(BO-XGBoost/Bayes-XGBoost)的数据回归预测+交叉验证

回归预测 | Matlab基于贝叶斯算法优化XGBoost(BO-XGBoost/Bayes-XGBoost)的数据回归预测交叉验证 目录 回归预测 | Matlab基于贝叶斯算法优化XGBoost(BO-XGBoost/Bayes-XGBoost)的数据回归预测交叉验证效果一览基本介绍程序设计参考资料 效果一览 基本介绍 Matlab实现基于贝叶…

端口安全老化细节

我们都知道port-security aging-time命令用来配置端口安全动态MAC地址的老化时间&#xff0c;但是后面还可以加上类型&#xff1a; [SW1-GigabitEthernet0/0/1]port-security aging-time 5 type absolute Absolute time 绝对老化 inactivity Inactivity time相对老化 …

详解 HTTPS 与 TLS证书链校验

一文详解 HTTPS 与 TLS证书链校验_证书链怎么验证-CSDN博客 深入浅出 SSL/CA 证书及其相关证书文件&#xff08;pem、crt、cer、key、csr&#xff09; https://zhuanlan.zhihu.com/p/702745054

ASP.NET Core 入门教学十七 GraphQL入门指南

GraphQL 是一种用于 API 的查询语言&#xff0c;允许客户端请求所需的数据&#xff0c;并能够合并多个资源到一个请求中。在 ASP.NET Core 中使用 GraphQL 可以提供更灵活、高效和实用的数据查询方式。以下是 ASP.NET Core 中 GraphQL 的入门指南&#xff1a; 1. 安装必要的 N…