组件功能
列表项组件(ListViewItem)用于在 ListView 中展示单个列表条目,是构建列表型界面的基本单元。
该组件支持灵活的子组件组合、对齐与间距控制,并可配置整行点击动作,适用于信息展示与操作入口并存的场景。
基础用法
通过 children 属性定义列表项内部的展示内容,可组合图标、文本等组件,形成基础列表结构。
Template 示例:
<ListViewItem gap="16px" align="center">
<Icon name="user" size="lg" />
<Text value="用户名称" />
</ListViewItem>
效果展示如下:

属性说明
| 属性名 | 类型 | 描述 | 默认值 |
|---|---|---|---|
| children ★ | ChatKitComponent[] |
子组件列表 | - |
| onClickAction | ActionConfig |
点击整个列表项时触发的动作 | - |
| gap | number | string |
子元素间距 | - |
| align | Alignment |
垂直对齐方式 | "start" |
注意:
★ 标记为必填属性。
Alignment 类型说明
用于控制列表项内子组件的垂直对齐方式,支持以下取值:
-
"start"- 顶部对齐 -
"center"- 居中对齐 -
"end"- 底部对齐 -
"baseline"- 基线对齐 -
"stretch"- 拉伸对齐
交互效果说明
当配置了 onClickAction 时:
-
鼠标悬停时背景变灰。
-
显示 pointer 手形光标。
-
整个列表项可点击。
适用于跳转、选择等需要触发操作的场景。
使用示例
以下示例展示了一个可点击的列表项,点击后跳转至用户资料页面。
Template 示例:
<ListView>
<ListViewItem
gap="16px"
align="center"
onClickAction={{
type: "sys.go_to_url",
payload: { url: "/profile" }
}}
>
<Icon name="profile" size="lg" color="#0052D9" />
<Col gap="4px" flex={1}>
<Text value="用户资料" size="md" weight="semibold" />
<Caption value="查看和编辑个人信息" size="sm" />
</Col>
<Button label="查看" variant="outline" size="sm" />
</ListViewItem>
</ListView>
效果展示如下:

典型布局模式
1. 图标 + 文本
适用于简单的列表或轻量信息展示。
Template 示例:
<ListViewItem gap="12px" align="center">
<Icon name="document" />
<Text value="文档名称" />
</ListViewItem>
效果展示如下:

2. 图标 + 标题 + 描述
适用于需要展示补充说明信息的列表项。
Template 示例:
<ListViewItem gap="16px" align="center">
<Icon name="mail" size="lg" />
<Col gap="4px" flex={1}>
<Text value="邮件标题" weight="semibold" />
<Caption value="邮件摘要内容" />
</Col>
</ListViewItem>
效果展示如下:

3. 完整信息卡片
适用于列表中包含操作按钮的复杂场景。
Template 示例:
<ListViewItem gap="16px" align="center">
<Image src="https://cdn.xiaowei.qq.com/webim/assets/static/widget/lib-v1.0.0/img/self_introduction.png" size="48px" radius="full" />
<Col gap="4px" flex={1}>
<Text value="董俊言(Julian)" weight="semibold" />
<Caption value="产品经理" />
</Col>
<Button label="关注" size="sm" />
</ListViewItem>
效果展示如下:
