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

devtools/2024/9/23 6:22:30/

解决方案:

  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/devtools/109930.html

相关文章

如何利用命令模式实现一个手游后端架构?

命令模式的原理解读 命令模式的英文翻译是 Command Design Pattern。在 GoF 的《设计模式》一书中&#xff0c;它是这么定义的&#xff1a; The command pattern encapsulates a request as an object, thereby letting us parameterize other objects with different reques…

NVIDIA Triton Inference Server 部署 yolov5

文章目录 一、拉取 tensorrt 、yolov5、tritonserver 镜像二、下载 yolov5-6.2、tensorrtx/yolov5-6.2源码三、pt转wts四、wts转engine五、创建triton推理服务器六、创建客户端进行测试 一、拉取 tensorrt 、yolov5、tritonserver 镜像 docker pull hakuyyf/tensorrtx:trt8.2_…

Linux /tmp/下的文件自动清理

在使用systemd程序的Linux系统中&#xff0c;/tmp 目录下的文件会自动清理。默认情况下&#xff0c;系统使用 systemd-tmpfiles-clean 服务来管理 /tmp 目录中的文件&#xff0c;并根据文件的访问时间来决定何时删除它们。具体清理策略取决于配置文件 /usr/lib/tmpfiles.d/tmp.…

【Go】Go语言介绍与开发环境搭建

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…

批量创建文件夹和文件——excel VBA实现

当需要创建大量文件夹及文件时&#xff0c;可借助excel vba 实现&#xff0c;如下图&#xff1a; 批量创建文件名为1-10的文件夹&#xff0c;每个文件夹内有个与文件名相同的txt文件&#xff0c;txt文件内的数字也跟文件名相同。 附代码&#xff1a; Sub CreateFoldersAndFile…

【区块链通用服务平台及组件】信息数据流转验真技术研究项目 | FISCO BCOS应用案例

在日常工作中&#xff0c;相关系统每天会产生大量数据&#xff0c;系统之间有多种模式数据交互方式&#xff0c;数据监管工作量巨大&#xff0c;急需 数据追溯定位工具来辅助监管&#xff1b;数据在生产过程中经常会出现采集、提交、修改、删除等操作&#xff0c;需要对数据变更…

3个恢复方法详解:iPhone手机快速找回备忘录

当我们在工作或者是学习时&#xff0c;总会有一些灵光乍现的好想法&#xff0c;我们通常会将这些想法记录在iPhone手机备忘录中&#xff0c;以便随时查看。但是&#xff0c;如果出现不慎删除备忘录的情况&#xff0c;iPhone该如何找回备忘录呢&#xff1f;不用担心&#xff0c;…

windows修改升级时间

按键盘上的【 Win R 】组合键&#xff0c;打开运行&#xff0c;然后输入【regedit】命令&#xff0c;再按【确定或回车】&#xff0c;打开注册表编辑器&#xff1b; 3、注册表编辑器窗口&#xff0c;依次展开到以下路径&#xff1a; HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Wi…