1. 背景和功能 用于在小程序中渲染Markdown文本。 众所周知,Markdown的渲染一般需要解析成HTML来渲染。然而小程序并没有提供HTML渲染的功能,甚至连利用JS动态创建UI元素都不可能。因此所有的Markdown渲染库全部无法在小程序下正常工作。 本库可以实现在小程序下渲染Markdown内容,支持图片、表格在内的大部分Markdown特性。 使用方式1. 准备工作:- 下载并拷贝wemark目录到小程序根目录
- WXSS中引用样式:@import '../wemark/wemark.wxss'
- WXML中引用结构:<import src="../wemark/wemark.wxml"/>
- JS中引用wemark:var wemark = require('wemark')
2. JS部分首先需要确定一个用于wemark渲染使用的数据名称(默认情况下为wemark),然后在页面的data中指定: page({ data:{ // 确定一个数据名称 wemark:{} }});
接下来在Page的生命周期函数(如onReady)中,调用wemark.parse(md, this, options)即可。 具体的参数说明: - md,必填,需要渲染的Markdown字符串
- this,必填,Page实例
- options,其它的参数
- imageWidth,图片的宽度,如包含图片,则为必填,以px为单位
- name,对应上面指定的数据名称,默认为wemark
3. WXML部分
[mw_shl_code=applescript,true]// data中的参数和上方确定的数据名称保持一致
<tempalte is="wemark" data="{{...wemark}}"></tempalte>[/mw_shl_code]
实例
[mw_shl_code=applescript,true]// 引入wemark
var wemark = require('../wemark/wemark');
// 需要渲染的Markdown文本
var md = '# hello, world\n\nI love you, wemark!';
Page({
data: {
// 确定一个数据名称
wemark:{}
},
onReady: function(){
wemark.parse(md, this, {
imageWidth: wx.getSystemInfoSync().device.windowWidth - 40,
name: 'wemark'
})
}
});[/mw_shl_code]
特性- 标题
- 段落
- 代码段
- 引用
- 无序列表
- 有序列表
- 粗体
- 强调(斜体)
- 行内代码
- 图片
- 表格
附件下载:
|