更新记录

1.0.0(2026-07-03) 下载此版本

初始版本


平台兼容性

uni-app(4.0)

Vue2 Vue2插件版本 Vue3 Vue3插件版本 Chrome Chrome插件版本 Safari Safari插件版本 app-vue app-vue插件版本 app-nvue Android iOS 鸿蒙
1.0.0 1.0.0 1.0.0 1.0.0 1.0.0 - - - -
微信小程序 微信小程序插件版本 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
1.0.0 - - - - - - - - - - -

zv-text-preview

文本预览 / 展开折叠组件。超出指定行数后显示省略,支持展开与收起,并带有高度过渡动画。

基础用法

<zv-text-preview :content="text" :lines="2" />

参数说明

参数 类型 默认值 说明
content String '' 文本内容,支持纯文本或 HTML 富文本
type String text 内容类型:text 纯文本 / html 富文本
lines Number 2 折叠时显示的行数
expanded / v-model:expanded Boolean false 是否展开
expandText String 展开 展开按钮文字
collapseText String 收起 收起按钮文字
expandStyle String '' 展开按钮样式(行内 style)
collapseStyle String '' 收起按钮样式(行内 style)
expandPosition String inline 展开按钮位置,见下方
collapsePosition String bottom-right 收起按钮位置,见下方
expandWrapStyle String '' 展开按钮容器样式
collapseWrapStyle String '' 收起按钮容器样式
textStyle String '' 正文样式
wrapStyle String '' 外层容器样式
duration Number 300 展开 / 收起动画时长(ms)
maskColor String #ffffff 行末展开按钮渐变遮罩色,需与背景色一致

按钮位置 expandPosition / collapsePosition

说明
inline 仅 expand 可用,显示在最后一行末尾(带渐变遮罩)
bottom-left 显示在内容下方,左对齐
bottom-right 显示在内容下方,右对齐
bottom-center 显示在内容下方,居中

事件

事件 说明 回调参数
expand 展开时触发
collapse 收起时触发
change 展开状态变化 (expanded: boolean)
update:expanded v-model:expanded 更新 (expanded: boolean)

插槽

插槽 说明
expand 自定义展开按钮内容
collapse 自定义收起按钮内容

使用示例

纯文本

<zv-text-preview
    :content="longText"
    :lines="2"
/>

富文本

<zv-text-preview
    type="html"
    :content="htmlContent"
    :lines="2"
/>

自定义按钮样式与位置

<zv-text-preview
    :content="longText"
    :lines="2"
    expandPosition="inline"
    collapsePosition="bottom-right"
    expandText="展开"
    collapseText="收起"
    :expandStyle="expandStyle"
    :collapseStyle="collapseStyle"
    :textStyle="textStyle"
/>

<script>
export default {
    data() {
        return {
            longText: '文本超长展开折叠组件,超出指定的行数后,省略号...,显示文本...',
            textStyle: 'font-size: 28rpx; color: #333; line-height: 1.6;',
            expandStyle: 'color: #007aff; font-size: 28rpx;',
            collapseStyle: 'color: #007aff; font-size: 28rpx;'
        }
    }
}
</script>

受控展开状态

<zv-text-preview
    v-model:expanded="isExpanded"
    :content="longText"
    :lines="2"
    @expand="onExpand"
    @collapse="onCollapse"
/>

自定义按钮内容

<zv-text-preview :content="longText" :lines="2">
    <template #expand>
        <text style="color: #ff6600;">查看更多</text>
    </template>
    <template #collapse>
        <text style="color: #ff6600;">收起内容</text>
    </template>
</zv-text-preview>

说明

  • 折叠态默认在最后一行末尾显示「展开」(expandPosition="inline"),展开后在下方右对齐显示「收起」。
  • 展开 / 收起通过 max-height 过渡实现动画效果。
  • 富文本模式下,超出判断基于剥离 HTML 标签后的文本高度估算,复杂排版场景建议配合 textStyle 微调。
  • maskColor 需与页面背景色一致,行末「展开」按钮渐变遮罩才会自然。

隐私、权限声明

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

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

插件不采集任何数据

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

许可协议

MIT协议

暂无用户评论。