--- 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 图标 + 标题 图片 + 标题 Navigator 跳转 头像组 4 人 按钮 标签 音乐 电影 旅行 文本 小目标还没有实现! 多行Item 小目标还没有实现! 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 凯尔 我已天理为凭,踏入这片荒芜,不再受凡人的枷锁遏制。我已天理为凭,踏入这片荒芜,不再受凡人的枷锁遏制。 22:20 5 99+ 瓦洛兰之盾-塔里克 战士 塔里克是保护者星灵,用超乎寻常的力量守护着符文之地的生命、仁爱以及万物之美。塔里克由于渎职而被放逐,离开了祖国德玛西亚,前去攀登巨神峰寻找救赎,但他找到的却是来自星界的更高层的召唤。现在的塔里克与古代巨神族的神力相融合,以瓦洛兰之盾的身份,永不疲倦地警惕着阴险狡诈的虚空腐化之力。 22:20 莫甘娜 凯尔,你被自己的光芒变的盲目! 22:20 5 伊泽瑞尔 断开连接... 等我回来一个打十个 22:20 5 瓦罗兰大陆-睡衣守护者-新手保护营 6人 伊泽瑞尔: 传送中... 22:20 ``` ## 列表左滑 ::: tip 因为右侧预览图是 `ifname` 的原因,无法监听右滑事件,[点此查看 ColorUI 在线展示](https://miren123.gitee.io/colorui-h5/#/pages/component/list/), ::: 1. 基于消息列表 2. 用户开始触摸时,获取触摸点到盒子左侧的距离,根据触摸结束时的距离与开始距离作比较,判断出用户滑动的方向,如果是左滑,则添加类名 `move-cur`,就是将该项左移 **260upx**,右滑则回到原位不变。 3. 除了置顶、删除,还可以自定义其它的,不过得注意计算左移的宽度 > 演示代码 ```html 文晓港 消息未送达 22:20 5 置顶 删除 ``` ## 列表相关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))||