Skip to content

Grid 宫格


按需引入

::: CopyCode

ts
import { createApp } from 'vue'
import App from './App.vue'
import { MeGrid, MeGridItem } from 'mine-h5-ui'
import 'mine-h5-ui/styles/MeGrid.css'
import 'mine-h5-ui/styles/MeGridItem.css'

createApp(App).use(MeGrid).use(MeGridItem).mount('#app')

:::

提示

  • 如果你觉得重新编写 HTML 结构麻烦,可以直接复制下面的代码。

代码演示

基础用法

  • 通过在 MeGrid 组件上的 cols 属性来设置一行需要展示几个格子,默认为 4。
  • 通过在 MeGridItem 组件上的 icontext 属性来设置里面的图标和内容。

::: CopyCode

html
<me-grid :cols="4">
  <me-grid-item icon="icon-wechat" text="微信" />
</me-grid>

:::

自定义用法

  • 通过 Slot 来设置自定义内容。

::: CopyCode

vue
<script lang="ts" setup>
import { MeToast } from 'mine-h5-ui'

const grids = Object.freeze([
  {
    icon: 'icon-wechat',
    text: '微信',
    iconColor: '#67c23a'
  },
  {
    icon: 'icon-pengyouquan',
    text: '朋友圈',
    iconColor: '#409eff'
  },
  {
    icon: 'icon-zhifubao',
    text: '支付宝',
    iconColor: '#06b4fd'
  },
  {
    icon: 'icon-qq',
    text: 'QQ',
    iconColor: '#ec502b'
  },
  {
    icon: 'icon-weibo',
    text: '微博',
    iconColor: '#f40f3b'
  },
  {
    icon: 'icon-qr-code',
    text: '二维码',
    iconColor: '#1cc09e'
  },
  {
    icon: 'icon-xiangji',
    text: '相机',
    iconColor: '#4a82ff'
  },
  {
    icon: 'icon-loading_ico',
    text: '加载',
    iconColor: '#f60',
    textColor: '#ff9249'
  }
])

/**
 * 点击列表
 */
const handleLi = ({ text }) => {
  MeToast(text)
}
</script>

<template>
  <me-grid border-color="#d9d9d9" :cols="3">
    <me-grid-item v-for="item in grids" :keys="item.icon" v-bind="item" @click="handleLi(item)" />
    <me-grid-item>
      <div class="cust">
        <me-icon name="icon-love" color="#999" size="28px" />
        <p>自定义</p>
      </div>
    </me-grid-item>
  </me-grid>
</template>

<style scoped lang="less">
.cust {
  .me-icon {
    position: relative;
    display: block;
    margin: 0 auto 5px;
    &::after {
      content: '';
      position: absolute;
      top: -4px;
      right: 20px;
      border-radius: 50%;
      width: 14px;
      height: 14px;
      background: #f66;
    }
  }
}
</style>

:::

API

MeGrid

参数

参数说明类型可选值默认值版本
cols一行几个宫格number--4v2.0.0
border-color宫格边框颜色string--#edeff2v2.0.0

Slots

  • ⚠ 注意:此插槽只接 MeGridItem 组件。
具名插槽说明scopedSlots版本
default默认名称--v2.0.0

方法

方法名说明回调参数版本
--------

MeGridItem

参数

参数说明类型可选值默认值版本
icon单个宫格项的图标string----v2.0.0
icon-color单个宫格项图标的颜色string--#494949v2.0.0
text单个宫格项的文本string----v2.0.0
text-color单个宫格项文本的颜色string--#949494v2.0.0

方法

方法名说明回调参数版本
click点击单个宫格时触发的事件event: MouseEventv2.3.5

基于 MIT 许可发布