# mx-grid 卡片图标

宫格可以在水平方向上把页面分隔成等宽度的区块,用于展示内容或进行页面导航。

# 引入

在app.json或index.json中引入组件,详细介绍见快速上手

"usingComponents": {
  "mx-grid": "/miniprogram_npm/m-ui/mx-grid/index",
  "mx-grid-item": "/miniprogram_npm/m-ui/mx-grid-item/index",
  "mx-grid-card-item": "/miniprogram_npm/m-ui/mx-grid-card-item/index"
}

# 小程序码

可使用微信扫码查看小程序码

#

# 代码演示

# 基本用法

可以通过mx-grid-card-item组件来设置固定卡片类型,type可选big和small,value为卡片的值,unit为卡片的单位,describe为卡片描述。

 <mx-row gutter="10">
      <mx-col span="12">
        <mx-panel custom-class="row-layout row-layout-two">
          <mx-grid-card-item value="-2" type="big" describe="冷藏室" unit="°C"></mx-grid-card-item> </mx-panel
      ></mx-col>
      <mx-col span="12">
        <mx-panel custom-class="row-layout row-layout-two"
          ><mx-grid-card-item value="-17" type="big" describe="冷冻室" unit="°C"></mx-grid-card-item></mx-panel
      ></mx-col>
    </mx-row>

# 小卡片

<mx-grid column-num="2">
      <mx-grid-item use-slot>
        <mx-grid-card-item value="0" type="small" describe="昨日开关门次数" unit=""></mx-grid-card-item
      ></mx-grid-item>
      <view class="vertical-line"></view>
      <mx-grid-item use-slot>
        <mx-grid-card-item value="100" type="small" describe="昨日节能指数" unit=""></mx-grid-card-item
      ></mx-grid-item>
    </mx-grid>

# 自定义列数

<mx-grid column-num="3">
  <mx-grid-item icon="photo-o" text="文字" wx:for="{{ 6 }}" />
</mx-grid>

# 自定义内容

通过插槽可以自定义格子展示的内容。

<mx-grid column-num="3" border="{{ false }}">
  <mx-grid-item use-slot wx:for="{{ 3 }}" wx:for-item="index">
    <image
      style="width: 100%; height: 90px;"
      src="demo.jpg"
    />
  </mx-grid-item>
</mx-grid>

# 正方形格子

设置square属性后,格子的高度会和宽度保持一致。

<mx-grid square>
  <mx-grid-item icon="photo-o" text="文字" wx:for="{{ 8 }}" />
</mx-grid>

# 格子间距

通过gutter属性设置格子之间的距离。

<mx-grid gutter="{{ 10 }}">
  <mx-grid-item icon="photo-o" text="文字" wx:for="{{ 8 }}" />
</mx-grid>

# 内容横排

将direction属性设置为horizontal,可以让宫格的内容呈横向排列。

<mx-grid direction="horizontal" column-num="2">
  <mx-grid-item icon="photo-o" text="文字" />
  <mx-grid-item icon="photo-o" text="文字" />
  <mx-grid-item icon="photo-o" text="文字" />
</mx-grid>

# API

# Grid Props

参数 说明 类型 默认值
column-num 列数 number 4
icon-size 图标大小,默认单位为px string 28px
gutter 格子之间的间距,默认单位为px string,number 0
border 是否显示边框 boolean true
center 是否将格子内容居中显示 boolean true
square 是否将格子固定为正方形 boolean false
clickable 是否开启格子点击反馈 boolean false
direction 格子内容排列的方向,可选值为 horizontal string vertical
info 图标右上角提示信息 string、number -
reverse 是否调换图标和文本的位置 boolean false
use-slot 是否使用自定义内容的插槽 boolean false

# GridCardItem Props

参数 说明 类型 默认值
value string -
unit 单位 string -
describe 描述 string -
type 类型。可选值big``small string big

# GridItem Props

参数 说明 类型 默认值
text 文字 string -
icon 图标名称或图片链接 string -
icon-color 图标颜色 string -
icon-prefix 第三方图标前缀 string mx-icon
dot 是否显示图标右上角小红点 boolean false
badge 图标右上角徽标的内容 string,number -
url 点击后跳转的链接地址 string -
link-type 链接跳转类型,可选值为 redirectTo switchTab reLaunch string navigateTo

# Grid 外部样式类

名称 说明
custom-class 根节点样式类

# GridItem Events

事件名 说明 参数
bind:click 点击格子时触发 -

# GridItem 外部样式类

名称 说明
custom-class 根节点样式类
content-class 内容样式类
icon-class 图标样式类
text-class 文本样式类

# GridItem Slots

名称 说明
- 自定义宫格的所有内容,需要设置use-slot属性
icon 内容样式自定义图标,如果设置了use-slot或者icon属性则不生效类
text 自定义文字,如果设置了use-slot或者text属性则不生效