List 列表

列表展示,不支持配置初始化接口初始化数据域,所以需要搭配类似像Service这样的,具有配置接口初始化数据域功能的组件,或者手动进行数据域初始化,然后通过source属性,获取数据链中的数据,完成数据展示。

基本用法

加载中,请稍后。。。

选择模式

设置"selectable": true, 列表开启多选模式

加载中,请稍后。。。

列表默认支持多选,设置"multiple": false开启单选模式

加载中,请稍后。。。

或者你也可以使用 CRUD 的 list 模式

单行点击操作

1.4.0 及以上版本

配置 itemAction 可以实现点击某一行后进行操作,支持 action 里的所有配置,比如弹框、刷新其它组件等。

加载中,请稍后。。。

设置组件的 CSS 类

className属性会添加到组件外层 DOM 节点上,如果要在组件当前层级添加 CSS 类,请设置innerClassName属性

加载中,请稍后。。。

字母索引条

设置 showIndexBar: true 可以在列表右侧显示字母索引条,点击字母可以快速定位到以该字母开头的列表项。默认使用 title 字段作为索引依据,也可以通过 indexField 指定其他字段。

设置 indexBarOffset 可以设置字母索引条偏移量,用于设置点击索引条跳转时的滚动位置偏移。

加载中,请稍后。。。

属性表

属性名 类型 默认值 说明
type string "list" 指定为列表展示。
title string 标题
source string ${items} 数据源, 获取当前数据域变量,支持数据映射
placeholder string ‘暂无数据’ 当没数据的时候的文字提示
selectable boolean false 列表是否可选
multiple boolean true 列表是否为多选
className string 外层 CSS 类名
headerClassName string amis-list-header 顶部外层 CSS 类名
footerClassName string amis-list-footer 底部外层 CSS 类名
listItem Array 配置单条信息
listItem.title 模板 标题
listItem.titleClassName string h5 标题 CSS 类名
listItem.subTitle 模板 副标题
listItem.avatar 模板 图片地址
listItem.avatarClassName string thumb-sm avatar m-r 图片 CSS 类名
listItem.desc 模板 描述
listItem.body ListBodyField[] 内容容器,主要用来放置非表单项组件
listItem.actions Array<Action> 按钮区域
listItem.actionsPosition 'left' or 'right' 默认在右侧 按钮位置
showIndexBar boolean false 是否显示右侧字母索引条
indexField string 'title' 索引依据字段,默认使用 title 字段或列表项标题
indexBarOffset number 0 索引条偏移量,用于设置点击索引条跳转时的滚动位置偏移

ListBodyField

interface ListBodyField {
  /* 列标题 */
  label?: string;
  /* 外层DOM的CSS类名 */
  className?: string;
  /* label的CSS类名 */
  labelClassName?: string;
  /* 内层组件的CSS类名,className属性会添加到外层DOM,如果要在组件层级添加CSS类,请设置当前属性 */
  innerClassName?: string;
  /* 绑定字段名 */
  name?: string;
  /* 配置查看详情功能 */
  popOver?: SchemaPopOver;
  /* 配置快速编辑功能 */
  quickEdit?: SchemaQuickEdit;
  /* 配置点击复制功能 */
  copyable?: SchemaCopyable;
}

事件表

当前组件会对外派发以下事件,可以通过onEvent来监听这些事件,并通过actions来配置执行的动作,在actions中可以通过${事件参数名}${event.data.[事件参数名]}来获取事件产生的数据,详细请查看事件动作

[name]表示当前组件绑定的名称,即name属性,如果没有配置name属性,则通过value取值。

事件名称 事件参数 说明 版本
itemClick item: IItem 单行被点击时触发,IItem为点击行的信息。注意itemActiononEvent是互斥的,List 组件中的onEvent会覆盖itemAction的行为 2.4.0

IItem

属性名 类型 默认值 说明
data Record<string, any> 当前行所在数据域
index number 行索引值,从 0 开始

itemClick

加载中,请稍后。。。

动作表

6.4.0 或更高版本

当前组件对外暴露以下特性动作,其他组件可以通过指定actionType: 动作名称componentId: 该组件id来触发这些动作,动作配置可以通过args: {动作配置项名称: xxx}来配置具体的参数,详细请查看事件动作

动作名称 动作配置 说明
select args.index 可选,指定行数,支持表达式
args.condition 可选,通过表达式指定更新哪些行,支持条件组合 index`
设置列表的选中项
selectAll - 设置列表全部项选中
clearAll - 清空列表所有选中项
initDrag - 开启列表拖拽排序功能
cancelDrag - 放弃列表拖拽排序功能
setValue args.value: object
args.index 可选,指定行数,支持表达式
args.condition 可选,通过表达式指定更新哪些行,支持条件组合
更新列表记录
submitQuickEdit 快速编辑数据提交

select

  • args.index 可选,指定行数,支持表达式
  • args.condition 可选,通过表达式指定更新哪些行,支持条件组合
加载中,请稍后。。。

selectAll

加载中,请稍后。。。

clearAll

加载中,请稍后。。。

initDrag & cancelDrag

加载中,请稍后。。。

setValue

更新列表记录

加载中,请稍后。。。

更新指定行记录

可以通过指定index或者condition来分别更新指定索引的行记录和指定满足条件(条件表达式或者 ConditionBuilder)的行记录,另外replace同样生效,即可以完全替换指定行记录,也可以对指定行记录做合并。

加载中,请稍后。。。