---
title: 列表
date: 2023-05-28 16:17:38
permalink: /pages/component/list
article: false
---
列表主要就是 `cu-list` 和 `cu-item` 的配合使用
## 宫格列表
1. 宫格列表就是列表结合 grid 布局设计出的样式
2. 通过 `col-1|...` 可以设置每行的个数,取值 1~5,默认有边框,可以加类名 `no-border` 去除边框
3. `cu-item` 里就是图标加文字,图标可以设置数字角标
4. 可以在通过遍历循环的变量设置对应的图标、名称等
> 演示代码
```html
{{item.badge}}
{{item.name}}
return {
cuIconList: [{
cuIcon: 'cardboardfill',
color: 'red',
badge: 120,
name: 'VR'
}],
};
```
## 菜单列表
1. 菜单列表就是列表加上类名 `menu` 设计出的样式
2. 加上 class 类名 `sm-border` 设置每一行的短边框
3. 加上 class 类名 `card-menu` 将列表设置成卡片样式
4. 加上 class 类名 `arrow` 在列表子元素上添加arrow设置箭头
> 演示代码
```html
return {
skin: false,
};
SwitchSex(e) {
this.skin = e.detail.value
},
.switch-sex::after {
content: "\e716";
}
.switch-sex::before {
content: "\e7a9";
}
```
## 消息列表
1. 菜单列表就是列表加上类名 `menu-avatar` 设计出的样式
2. `cu-item` 里其实就 `cu-avatar` 和 `content` 两块内容
3. `cu-avatar` 是左侧头像,加上 `round lg` 即可,同时可以是方形、圆形、右上角加上数字标签
4. `content` 是右侧内容,基本可以完全自定义
> 演示代码,可直接复制使用
```html
```
## 列表左滑
::: tip
因为右侧预览图是 `ifname` 的原因,无法监听右滑事件,[点此查看 ColorUI 在线展示](https://miren123.gitee.io/colorui-h5/#/pages/component/list/),
:::
1. 基于消息列表
2. 用户开始触摸时,获取触摸点到盒子左侧的距离,根据触摸结束时的距离与开始距离作比较,判断出用户滑动的方向,如果是左滑,则添加类名 `move-cur`,就是将该项左移 **260upx**,右滑则回到原位不变。
3. 除了置顶、删除,还可以自定义其它的,不过得注意计算左移的宽度
> 演示代码
```html
```
## 列表相关class
|class类名| 说明| 可选值|
|-- | --| --|
|cu-list |列表必选值 |——|
|cu-item| 列表子元素| ——|
|no-border |无边框 |——|
|menu| 菜单列表| ——|
|sm-border |短边框 |——|
|card-menu| 卡片样式的菜单列表 |——|
|arrow |右箭头 |——|
|menu-avatar| 消息列表(带头像)| ——|
|cu-avatar |头像 |——|
|content| 内容| ——|
|grayscale| 灰度(background-color: #f5f5f5)| ——|
|cur| background-color: #fcf7e9 ||
|move-cur| 左移(transform: translateX(-260upx))||