Skip to content

如果想在小程序中嵌入 markdown 的文档,你有什么思路?

Posted on:2024年9月10日 at 11:13

小程序不支持直接渲染 markdown,但是支持富文本的渲染,可以将文档转成 html 后进行渲染,或者使用一些第三方的库直接进行 markdown完成渲染。

1. 转成 html 后渲染

2. 使用第三方的组件库

可以使用第三方库,如 wxParsetowxml 进行渲染。这些库可以将 Markdown 文本解析为微信小程序可以理解的组件和数据。

以下是使用 wxParse 的基本步骤:

  1. 下载并导入 wxParse 到你的项目中。
  2. 在需要使用的页面的 JS 文件中,引入 wxParse.js
  3. 使用 wxParse.wxParse('markdown', 'md', markdownContent, this) 方法将 Markdown 文本解析为数据和组件。
  4. 在对应的 WXML 文件中,使用 <import src="wxParse.wxml"/> 导入 wxParse 的 WXML。
  5. 在需要显示 Markdown 的地方,使用 <template is="wxParse" data="{{wxParseData:markdown.nodes}}"/> 显示解析后的内容。

以下是使用 wxParse 渲染 Markdown 的代码示例:

// 引入 wxParse.js
var wxParse = require("../../wxParse/wxParse.js");

Page({
  data: {
    markdown: "",
  },
  onLoad: function (options) {
    var that = this;
    var markdownContent = "# 这是一个标题\n这是一段普通的文本";
    wxParse.wxParse("markdown", "md", markdownContent, that);
  },
});
<!-- 引入 wxParse.wxml -->
<import src="../../wxParse/wxParse.wxml" />
<view>
  <!-- 显示解析后的内容 -->
  <template is="wxParse" data="{{wxParseData:markdown.nodes}}" />
</view>
原文转自:https://fe.ecool.fun/topic/d687d4df-669d-46a1-a037-d84d8c819bfe