Home

Awesome

mpvue-wxParse 适用于 Mpvue 的微信小程序富文本解析组件

支持 Html、Markdown 转 Wxml 可视化,修改自: wxParse

npm package npm downloads

扫码体验

小程序码

属性

名称类型默认值描述
loadingBooleanfalse数据加载状态
classNameString自定义 class 名称
contentString渲染内容
noDataString数据不能为空空数据时的渲染展示
startHandlerFunction见源码自定义 parser 函数
endHandlerFunctionnull自定义 parser 函数
charsHandlerFunctionnull自定义 parser 函数
imagePropObject见下文图片相关参数

自定义 parser 函数具体介绍

imageProp 对象具体属性

名称类型默认值描述
modeString'aspectFit'图片裁剪、缩放的模式
paddingNumber0图片内边距
lazyLoadBooleanfalse图片懒加载
domainString''图片服务域名

事件

名称参数描述
preview图片地址,原始事件预览图片时触发
navigate链接地址,原始事件点击链接时触发

基本使用方法

npm i mpvue-wxparse
<template>
  <div>
    <wxParse :content="article" @preview="preview" @navigate="navigate" />
  </div>
</template>

<script>
import wxParse from 'mpvue-wxparse'

export default {
  components: {
    wxParse
  },
  data () {
    return {
      article: '<div>我是HTML代码</div>'
    }
  },
  methods: {
    preview(src, e) {
      // do something
    },
    navigate(href, e) {
      // do something
    }
  }
}
</script>

<style>
@import url("~mpvue-wxparse/src/wxParse.css");
</style>

渲染 Markdown

先将 markdown 转换为 html 即可

npm install marked
import marked from 'marked'
import wxParse from 'mpvue-wxparse'

export default {
  components: {
    wxParse
  },
  data () {
    return {
      article: marked(`#hello, markdown!`)
    }
  }
}

Tips

参照以下配置使 babel 处理 mpvue-wxparse,或更新 UglifyJs 插件

// webpack.base.conf.js
{
  test: /\.js$/,
  include: [resolve('src'), /mpvue-wxparse/],
  use: [
    'babel-loader',
    {
      loader: 'mpvue-loader',
      options: {
        checkMPEntry: true
      }
    }
  ]
}

感谢

@stonewen| @Daissmentii | @wuyanwen | @vcxiaohan