更新记录

1.0.0(2025-02-28) 下载此版本

发布初版


平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
app-vue app-nvue
钉钉小程序 快手小程序 飞书小程序 京东小程序 鸿蒙元服务
× × × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
×

Parse 富文本解析

组件名: xt-parse

安装方式

本组件符合 easycom 规范,HBuilderX 3.1.0 起,只需将本组件导入项目,在页面 template 中即可直接使用,无需在页面中 import 和注册 components

基本用法

此组件是基于社区优秀开源组件mp-htmlv2.5.0封装而来,更多详细信息请查看 mp-html文档; mp-html 优化了对<p></p>的忽略以及多个空格忽略的问题;

<template>
    <view class="xt">
        <xt-parse ref="html" :content="html"></xt-parse>
        <xt-button @click="log">打印</xt-button>
    </view>
</template>
<script>
    export default {
        data() {
            return {
                html: '<div><p>富文本解析</p><p>感谢mp-html开源</p><div>'
            }
        },
        methods: {
            log() {
                console.log(this.$refs.html.getText())
            }
        }
    }
</script>

<style lang="scss">
    .xt {
        padding: 0 20rpx;
        padding-top: 50rpx;
        display: flex;
        flex-direction: column;
        gap: 30rpx;
    }
</style>

API

属性名 类型 说明 默认值
containerStyle String 容器的样式
content String 用于渲染的 HTML 字符串
copyLink Boolean 是否允许外部链接被点击时自动复制 true
domain String 主域名,用于拼接链接
errorImg String 图片出错时的占位图链接
lazyLoad Boolean 是否开启图片懒加载 false
loadingImg String 图片加载过程中的占位图链接
pauseVideo Boolean 是否在播放一个视频时自动暂停其他视频 true
previewImg Boolean 是否允许图片被点击时自动预览 true
scrollTable Boolean 是否给每个表格添加一个滚动层使其能单独横向滚动 false
selectable Boolean|String 是否开启文本长按复制 false
setTitle Boolean 是否将 title 标签的内容设置到页面标题 true
showImgMenu Boolean 是否允许图片被长按时显示菜单 true
tagStyle Object 标签的默认样式
useAnchor Boolean|Number 是否使用锚点链接 false

Event

事件名 类型 说明
load Function dom 结构加载完毕时触发
ready Function 所有图片加载完毕时触发
imgtap Function 图片被点击时触发
linktap Function 链接被点击时触发
play Function 音视频播放时触发
error Function 媒体加载出错时触发

实例事件(通过ref调用)

名称 作用
in 将锚点跳转的范围限定在一个 scroll-view 内
navigateTo 锚点跳转
getText 获取文本内容
getRect 获取富文本内容的位置和大小
setContent 设置富文本内容
imgList 获取所有图片的数组
pauseMedia 暂停播放音视频
setPlaybackRate 设置音视频播放速率

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问