首页IT科技ant design react 表格列表数据(Ant Design表单之labelCol 和wrapperCol的实际开发笔记)

ant design react 表格列表数据(Ant Design表单之labelCol 和wrapperCol的实际开发笔记)

时间2025-05-29 00:50:02分类IT科技浏览3311
导读:目录...

目录

前言

一            、labelCol和wrapperCol是什么

二              、布局的栅格化

1.布局的栅格化系统的工作原理

三    、栅格常用的属性

1.左右偏移

2.区块间隔

3.栅格排序

四         、labelCol和wrapperCol的实际使用

总结

前言

主要是记录一下栅格布局的一些属性和labelCol               、wrapperCol等            。

一      、labelCol和wrapperCol是什么

首先            ,我们先去查询Ant Design Vue文档,

 由图中可知              ,它是属于Grid栅格里面的属性              。

而labelCol是什么意思呢    ,直接去翻译一下,而label它是标签的意思         ,而Col它是列的意思               ,所以      ,从字面上去理解      ,就是标签列    。而wrapperCol                ,它在英文里面翻译是封装的意思        ,在实际中   ,它是封闭的                 ,你可以理解为那种封闭的输入框          ,所以,它可以理解为输入框列         。如果说               ,你需要去设置布局样式时             ,就使用它               。

二      、布局的栅格化

1.布局的栅格化系统的工作原理

根据官网的文档描述如下:布局的栅格化系统  ,我们是基于行(row)和列(col)来定义信息区块的外部框架            ,以保证页面的每个区域能够稳健地排布起来      。下面简单介绍一下它的工作原理:

通过`row`在水平方向建立一组`column`(简写 col) 你的内容应当放置于`col`内              ,并且    ,只有`col`可以作为`row`的直接元素 栅格系统中的列是指 1 到 24 的值来表示其跨越的范围      。例如         ,三个等宽的列可以使用 `` 来创建 如果一个`row`中的`col`总和超过 24               ,那么多余的`col`会作为一个整体另起一行排列

首先      ,我们要先了解这个布局      ,我们才能由浅深入地一步步地往下学习                ,接下来        ,我们先来看一张布局图片   ,

 如图上所示                 ,分别有3列          ,第1列,它是由2个col-12组成的               ,所以它的效果图是这样的             ,col总和为24;第2列  ,它是由3个col-8组成的            ,col总和也为24              ,效果图如上;第3列    ,它是由4个col-6组成的         ,col总和也为24               ,效果图如上                。

代码如下:

<a-row> <a-col :span="12">col-12</a-col> <a-col :span="12">col-12</a-col> </a-row> <a-row> <a-col :span="8">col-8</a-col> <a-col :span="8">col-8</a-col> <a-col :span="8">col-8</a-col> </a-row> <a-row> <a-col :span="6">col-6</a-col> <a-col :span="6">col-6</a-col> <a-col :span="6">col-6</a-col> <a-col :span="6">col-6</a-col> </a-row>

所以      ,这就是很基础的栅格咯        。

从堆叠到水平排列   。

使用单一的一组 Row 和 Col 栅格组件      ,就可以创建一个基本的栅格系统                ,所有列(Col)必须放在 Row 内                 。

由上所知        ,我们大概知道什么是栅格的布局了   ,那后面                 ,我们就能开始了

三                、栅格常用的属性

1.左右偏移

我们直接用图来说会比较清楚          ,如图所示,它们的中间都有间隔               ,那就是我们想要的效果了             ,我们就是想要它们之间有分隔的效果  ,那要实现            ,就要使用到这个offset属性了          。

 使用 offset 可以将列向右侧偏。例如              ,offset={4} 将元素向右侧偏移了 4 个列(column)的宽度    ,直接上代码更清晰               。

代码如下:

<a-row> <a-col :span="8">col-8</a-col> <a-col :span="8" :offset="8">col-8</a-col> </a-row> <a-row> <a-col :span="6" :offset="6">col-6 col-offset-6</a-col> <a-col :span="6" :offset="6">col-6 col-offset-6</a-col> </a-row> <a-row> <a-col :span="12" :offset="6">col-12 col-offset-6</a-col> </a-row>

从第2行代码         ,讲解一下               ,:span = "8",代表这个列占了8个格      ,而:offset="8",表示这一列      ,要往右移动8个格             。

2.区块间隔

有些时候                ,我们需要更多的间隔        ,想要图下的效果   ,我们可以这样实现                 ,

官网描述是这样的:

栅格常常需要和间隔进行配合          ,你可以使用 Row 的 gutter 属性,我们推荐使用 (16+8n)px 作为栅格间隔(n 是自然数)  。

如果要支持响应式               ,可以写成 { xs: 8, sm: 16, md: 24, lg: 32 }            。

如果需要垂直间距             ,可以写成数组形式 [水平间距, 垂直间距] [16, { xs: 8, sm: 16, md: 24, lg: 32 }]              。

代码如下:

<a-row :gutter="16"> <a-col class="gutter-row" :span="6"> <div class="gutter-box">col-6</div> </a-col> <a-col class="gutter-row" :span="6"> <div class="gutter-box">col-6</div> </a-col> <a-col class="gutter-row" :span="6"> <div class="gutter-box">col-6</div> </a-col> <a-col class="gutter-row" :span="6"> <div class="gutter-box">col-6</div> </a-col> </a-row>

我们从代码上进行分析  ,首先            ,它的<a-row>里面使用了:gutter的属性              ,我们先去翻译一下这个单词是什么意思先    ,经过翻译         ,它是指排水沟或雨水槽的意思哈哈哈    。那:gutter="16"就意味着这个排水沟的沟槽是16个间隔这么大;而官方所说的 (16+8n)px                ,怎么理解呢      ,反正我是这么理解的      ,这个n就是用来调整间隔大小来用的                ,而这个是16        ,说明这个n也就是0了嘛         。

3.栅格排序

有些时候   ,我们需要对栅格里面的列进行排序呀                 ,官网是这样描述的          ,所谓的列排序,它是指通过使用 push 和 pull 类就可以很容易的改变列(column)的顺序               。

四        、labelCol和wrapperCol的实际使用

下面我通过开发代码来讲述               ,

代码如下:

<a-col :md="6" :sm="24"> <a-form-item label="物料编号" :labelCol="{span: 8}" :wrapperCol="{span: 15, offset: 1}"> <a-input v-model.trim="criteria.matnr"/> </a-form-item> </a-col> </a-row> <a-row> <a-col :md="6" > <a-form-item label="起始日期" :labelCol="{span: 8}" :wrapperCol="{span: 14, offset: 1}"> <a-date-picker v-model="criteria.promDateStart" style="width: 100%;"> </a-date-picker> </a-form-item> </a-col> <a-col :md="6" :sm="24"> <a-form-item label="结束日期" :labelCol="{span: 8}" :wrapperCol="{span: 14, offset: 1}"> <a-date-picker v-model="criteria.promDateEnd" style="width: 100%;"/> </a-form-item> </a-col>

它的效果图所下:

 首先             ,我们从这效果图来分析  ,是没什么大问题            ,然后我们看一下这个代码分析              ,由于它这个标签是<a-form-item>表单标签来的    ,所以这个:labelCol="{span: 8}" :wrapperCol="{span: 14, offset: 1}都是包含在里面的         ,而labelCol="{span: 8}"               ,你可以这样理解      ,这个的意思就是指            ”起始日期“   、              ”结束日期“这些内容所占用的空间为8个格      ,而 :wrapperCol="{span: 14, offset: 1}                ,它就是后面的封闭的框的所占的空间为14个格        ,并且还往右移动了1个格      。

那么接下来   ,我在改变一下                 ,把    ”起始日期“改为         ”促销起始日期“6个字后          ,我们在看一下效果,

 由图可知               ,那个冒号不见了             ,那是因为空间就只有8个格这么大  ,而现在加多了2个字            ,放不下了              ,所以那个冒号不见了      。

好了    ,知道问题所在         ,那么我们该怎么进行解决呢?

先看图               ,

现在      ,它的效果出来了      ,其实                ,很简单        ,就是把之前的labelCol="{span: 8}"   ,把它改一下就可以了                 ,把它改为labelCol="{span: 9}" 即可了          ,但前提是:span:9+span: 14+1要小于或者等于24才行,否则它会增加一行的                。

综上所述               ,我们知道             ,这个labelCol 通常都是指图上的这些文字标签的内容  ,而wrapperCol通常是指图上的输入框的内容            ,而它们之间的总和是24个格              ,效果可以根据这个24个格慢慢地去调整即可        。

总结

主要是记录一下栅格布局的一些属性和labelCol                 、wrapperCol等   。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
同态加密技术研究现状(同态加密详解)