一个轻量快速的插件,帮助你在微信小程序中显
一个轻量快速的插件,帮助你在微信小程序中显示富文本编辑器生成的HTML。
注:新版微信小程序已提供<rich-text>
富文本组件,但其兼容性暂时没有保证,你可能还是需要第三方解析工具。
font-size
, font-weight
等
解析速度较快
用法简便
支持图片、视频、table
缺点
偏向于对富文本编辑器生成的HTML进行解析,并不适用于所有场景。因为富文本编辑器生成的HTML符合一定的规范。
用法 (demo)
把 wxmlify 文件夹复制到你的 weapp 项目下。
在你需要显示富文本的页面 js 中引入,并 new 一个实例,比如:
// pages/index/index.js var Wxmlify = require('../../wxmlify/wxmlify.js') Page({ onLoad() { // 以任何方式获得要解析的Html代码 var html = getHTMLStringSomehow() // new 一个 wxmlify 实例就好了 var wxmlify = new Wxmlify(html, this, {}) } }) 在对应的页面 wxml 中引入模板,比如:
<!-- pages/index/index.wxml --> <import src="../../wxmlify/wxmlify.wxml" /> <template is="wxmlify" data="{{nodes: wxmlified}}"></template> Doc 查阅 构造函数
new Wxmlify(html, page [, options])
参数:
html: 字符串 - 要解析的html代码字符串
page: 小程序页面实例 - 也就是所有页面方法内this
的指向
options: 选项
返回值:一个wxmlify实例,用于调用方法
选项
dataKey
解析后数据在页面data中的key
类型:string
默认:'wxmlified'
例如:
new Wxmlify(html, this, { dataKey: 'myRichText' })
相应地在wxml中:
<template is="wxmlify" data="{{nodes: myRichText}}"></template>
preserveStyles
要保留的css样式名称(驼峰格式)
类型:
字符串 'all'
, 表示保留所有样式
否定值,如false
, 0
, null
,表示移除所有自带样式
数组,指定保留某些样式,如['fontSize', 'fontWeight', 'background']
默认:'all'
(默认保留所有样式)
disableImagePreivew
禁用图片点击预览
类型:boolean
默认:false
onImageTap
图片点击处理函数
类型:function
默认:function() {}
方法
wxmlify.getFullNodes()
返回一个Javascript数组,HTML 被解析后的 json数据结构
wxmlify.getHTML()
返回传入的HTML
wxmlify.getImages()
返回数组,包含所有图片的url
自定义样式
.wxmlified-element { /* 修改段落块的样式 */ } .wxmlified-element.h1 { /* 修改原<h1>标签块的样式,其它块级标签同理 */ } .wxmlified-image { /* 修改图片的样式 */ } .wxmlified-text { /* 修改文字节点的样式 */ } .wxmlified-table.table { /* table 的样式 */ border: 1rpx solid #acacac; } .wxmlified-table.tr { /* tr 的样式 */ border-bottom: 1rpx solid #acacac; } .wxmlified-table.tr:last-child { border-bottom:0; } .wxmlified-table.th, .wxmlified-table.td { /* th,td 的样式 */ border-right: 1rpx solid #acacac; line-height: 2; } .wxmlified-table.th:last-child, .wxmlified-table.td:last-child { border-right: none; } .wxmlified-table.th { font-weight: bold; }
This little tool is made possible thanks to an open source HTML-to-JSON parser himalaya made by Chris Andrejewski.
版权声明:
1、该文章(资料)来源于互联网公开信息,我方只是对该内容做点评,所分享的下载地址为原作者公开地址。2、网站不提供资料下载,如需下载请到原作者页面进行下载。