GridItem (宫格子组件)
宫格子组件
支持平台
安卓 | ios | 鸿蒙 | web | 微信小程序 |
---|---|---|---|---|
√ | √ | √ | √ | √ |
示例代码
html
<template>
<t-page title='宫格' main-class="p-30">
<t-card main-class="mb-30" title="Grid 宫格组件"
sub-title="宫格组件以灵活的栅格系统为核心,通过配置列数和可选边框,以及自定义子项样式,实现整齐划一的布局,为内容展示提供清晰有序的视觉体验。"></t-card>
<t-section title="基础功能" main-class="mb-30"></t-section>
<t-grid :column="5" main-class="tdb tdr mb-30">
<t-grid-item v-for="i in 5" :key="i" :icon="`/static/grid/grid (${i}).png`" :label="`功能${i}`"></t-grid-item>
</t-grid>
<t-section title="主题+徽标+图标" main-class="mb-30"></t-section>
<t-grid :column=" 5" main-class="tdb tdr mb-30 s-150" type="s" size="m" child-label-class="mt-0">
<!-- 通过插槽方式显示徽标 -->
<t-grid-item icon="red-packet" label="待付款">
<template #badge>
<t-badge type="error" main-class="da dr-10 dt-15" text="56556"></t-badge>
</template>
</t-grid-item>
<!-- 通过属性配置显示徽标 -->
<t-grid-item icon="car" label="待发货" :badge="true"
:badge-attrs="{text:'99',mainClass:'da dr-10 dt-15', type:'e'}"></t-grid-item>
<t-grid-item icon="bag" label="待收货" :badge="true"
:badge-attrs="{text:'HOT',mainClass:'da dr-10 dt-15', type:'e'}"></t-grid-item>
<t-grid-item icon="chat" label="待评价"></t-grid-item>
<t-grid-item icon="integral" label="退货"></t-grid-item>
</t-grid>
<t-section title="列数设置+徽标" main-class="mb-30"></t-section>
<t-grid :column="2" type='p' main-class="tdb tdr mb-30" child-label-class="mt-0">
<t-grid-item icon="calendar" label="签到"></t-grid-item>
<t-grid-item icon="gift" label="积分">
<template #badge>
<t-badge type="p" main-class="da dr-110 dt-30" text="15"></t-badge>
</template>
</t-grid-item>
</t-grid>
<t-section title="列数设置" main-class="mb-30"></t-section>
<t-grid :column="4" main-class="tdb tdr mb-30">
<t-grid-item v-for="i in 5" :key="i" :icon="`/static/grid/grid (${i}).png`" :label="`功能${i}`"
type="error"></t-grid-item>
</t-grid>
<t-section title="可滚动" main-class="mb-30"></t-section>
<swiper :indicator-dots="true" :autoplay="true" :interval="3000" :duration="1000" style="height: 400rpx;">
<swiper-item>
<t-grid :column="4">
<t-grid-item v-for="i in 8" :key="i" :icon="`/static/grid/grid (${i}).png`"
:label="`功能${i}`"></t-grid-item>
</t-grid>
<t-gap height="65rpx"></t-gap>
</swiper-item>
<swiper-item>
<t-grid :column="4">
<t-grid-item v-for="i in 8" :key="i" :icon="`/static/grid/grid (${i}).png`"
:label="`功能${i}`"></t-grid-item>
</t-grid>
<t-gap height="65rpx"></t-gap>
</swiper-item>
</swiper>
</t-page>
</template>
<script setup>
const column = ref(5)
</script>
属性
名称 | 类型 | 默认值 | 说明 | 可选值 |
---|---|---|---|---|
size | String | mini | 组件尺寸 | large(大尺寸), medium(中尺寸), small(小尺寸), mini(迷你) |
type | String | "" | 组件类型 | info(信息), primary(正常), error(错误), warning(警告), success(成功) |
disabled | Boolean | false | 组件是否禁用 | false, true |
stop | Boolean | false | 是否阻止事件冒泡(Tui统一写法处理事件冒泡) | false, true |
hover | Boolean | true | 是否有点击效果 | false, true |
path | String | "" | 点击组件后跳转的页面路径,如果为空则响应点击事件,如果不为空则跳转页面不会响应单击事件。 | - |
mainClass | String | "" | 组件根节点的样式 | - |
nativeClass | String | "" | 组件根节点原生样式 | - |
effect | String | "normal" | 组件显示主题 | normal(正常), dark(深色), light(浅色), plain(镂空) |
iconClass | String | `` | 图标样式 | |
icon | String | photo | 图标 | |
label | String | `` | 显示文本 | |
badge | Boolean | true | 是否显示徽标 | |
labelClass | String | `` | 显示文本样式 | |
badgeAttrs | UTSJSONObject | {} | 徽标的属性配置。支持徽标组件的所有属性 | |
hover | Boolean | true | 是否点击效果 |
事件
名称 | 返回参数 | 说明 |
---|---|---|
click | (e : UniPointerEvent) | - |
插槽
名称 | 返回值 | 说明 |
---|---|---|
default | - | |
name | - |