Merge branch 'next' into feat-tag

This commit is contained in:
sight
2022-08-27 14:09:28 +08:00
44 changed files with 1839 additions and 1078 deletions

View File

@@ -55,6 +55,9 @@ export default {
<template v-slot:body>
内容
</template>
<template v-slot:footer>
底部
</template>
</lay-card>
</div>
</template>
@@ -213,12 +216,13 @@ export default {
::: table
| 插槽 | 描述 | 可选值 |
| ------- | -------- | ------ |
| default | 默认插槽 | -- |
| header | 头部插槽 | -- |
| body | 内容插槽 | -- |
| extra | 扩展插槽 | -- |
| 插槽 | 描述 | 可选值 | 版本 |
| ------- | -------- | ------ |------ |
| default | 默认插槽 | -- |-- |
| header | 头部插槽 | -- |-- |
| body | 内容插槽 | -- |-- |
| extra | 扩展插槽 | -- |-- |
| footer | 扩展插槽 | -- |`1.4.3`|
:::
::: contributor card

View File

@@ -49,7 +49,7 @@ import { ref } from 'vue'
export default {
setup() {
const endTime2 = ref("2022-06-04 17:35:00");
const endTime2 = ref("");
return {
endTime2
@@ -254,15 +254,17 @@ const rangeTime3 = ref(['2022-01-01','2023-02-1']);
::: table
| 属性 | 描述 | 类型 | 默认值 | 可选值 |
| ------------- | ------------------------------------------------------------ | -------------- | ------ | -------------- |
| v-model | 当前时间 | `string` | -- | |
| type | 选择类型 | `string` | `date` | `date` `datetime` `year` `month` `time` `yearmonth` |
| disabled | 是否禁止修改 | `boolean` | false | — |
| simple | 一次性选择,无需点击确认按钮 | `boolean` | false | |
| readonly | 只读 | `boolean` | false | |
| allowClear | 允许清空 | `boolean` | true | |
| size | 尺寸 | `string` | `lg` `md` `sm` `xs` | `md` |
| 属性 | 描述 | 类型 | 默认值 | 可选值 | 版本 |
| ------------- | ------------------------------------------------------------ | -------------- | ------ | -------------- |-------------- |
| v-model | 当前时间 | `string` | -- | -- | -- |
| type | 选择类型 | `string` | `date` | `date` `datetime` `year` `month` `time` `yearmonth` | -- |
| disabled | 是否禁止修改 | `boolean` | false | — | — |
| simple | 一次性选择,无需点击确认按钮 | `boolean` | false | -- | -- |
| readonly | 只读 | `boolean` | false | -- | -- |
| allowClear | 允许清空 | `boolean` | true | -- | -- |
| size | 尺寸 | `string` | `lg` `md` `sm` `xs` | `md` | -- |
| prefix-icon | 前置图标 | `string` | `layui-icon-date` | 内置图标集 | `1.4.0` |
| suffix-icon | 后置图标 | `string` | -- | 内置图标集 | `1.4.0` |
:::

View File

@@ -120,7 +120,7 @@ export default {
::: demo
<template>
<lay-button @click="manualRef.open()">打开</lay-button>
<lay-button @click="manualRef.show()">打开</lay-button>
<lay-button @click="manualRef.hide()">关闭</lay-button>
<br><br>
<lay-dropdown ref="manualRef" :clickOutsideToClose="false" :clickToClose="false" updateAtScroll>
@@ -222,7 +222,7 @@ export default {
::: demo
<template>
<lay-dropdown @open="stat='开启'" @hide="stat='关闭'" updateAtScroll>
<lay-dropdown @show="stat='开启'" @hide="stat='关闭'" updateAtScroll>
<lay-button type="primary" >当前状态:{{stat}}</lay-button>
<template #content>
<lay-dropdown-menu>
@@ -516,42 +516,11 @@ export default {
<lay-dropdown-menu-item>选项三</lay-dropdown-menu-item>
</lay-dropdown-menu>
</template>
</lay-dropdown>
&nbsp;&nbsp;
<br><br>
<lay-button @click="triggerHeight += 100">改变触发器尺寸</lay-button>
<lay-button @click="contentHeight += 100">改变面板尺寸</lay-button>
<br><br>
<lay-dropdown placement="bottom-left" trigger="focus" :autoFitPosition="true" :autoFixPosition="true" :blurToClose="false" :clickOutsideToClose="false" updateAtScroll>
<lay-input placeholder="autoFixPosition" :style="{height: triggerHeight + 'px'}"></lay-input>
<template #content>
<div :style="{width:'350px', height: contentHeight + 'px'}"></div>
</template>
</lay-dropdown>
</template>
<script>
<script setup>
import { ref, computed } from 'vue'
export default {
setup() {
const btnSize = ref('')
const toogleSize = () => {
btnSize.value = btnSize.value ? '' : 'lg'
}
const triggerHeight = ref(100)
const contentHeight = ref(200)
return {
btnSize,
toogleSize,
triggerWidth,
triggerStyle,
}
}
}
</script>
:::
@@ -576,6 +545,9 @@ export default {
| blurToClose | 是否在触发器失去焦点时关闭面板,默认 `true` |`true` `false`|
| clickOutsideToClose| 是否点击外部关闭下拉面板,默认 `true`|`true` `false`|
| contentOffset | 下拉面板距离触发器的偏移距离,默认 2| -|
| mouseEnterDelay | mouseEnter 事件延迟触发的时间, trigger hover 有效 | - |
| mouseLeaveDelay | mouseLeave 事件延迟触发的时间, trigger hover 有效| - |
| focusDelay| focus 事件延迟触发的时间, trigger focus 有效 | - |
:::
@@ -599,8 +571,8 @@ export default {
| 插槽 | 描述 | 参数 |
| ------- | -------- | ------ |
| hide | 隐藏下拉内容后触发 | -- |
| open | 显示下拉内容后触发 | -- |
| hide | 隐藏下拉面板后触发 | -- |
| show | 显示下拉面板后触发 | -- |
:::

View File

@@ -142,7 +142,7 @@ export default {
:::
::: title 表单基本校验功能
::: title 表单验证
:::
::: demo
@@ -231,7 +231,7 @@ export default {
:::
::: title 校验规则 - 通过表单配置
::: title 校验规则
:::
::: demo

View File

@@ -735,6 +735,18 @@ export default {
:::
::: title Menu 事件
:::
::: table
| 属性 | 描述 | 参数 |
| ------------------- | ------------------- | -------------- |
| changeSelectedKey | 选中菜单回调 | value: string |
| changeOpenKeys | 展开目录回调 | value: string[] |
:::
::: title Menu Item 属性
:::

View File

@@ -13,7 +13,7 @@
::: demo 使用 `lay-page` 标签, 创建分页
<template>
<lay-page v-model="currentPage" :limit="limit" @limit="limit = $event" :total="total" :show-page="showPage"></lay-page>
<lay-page v-model="currentPage" :limit="limit" :total="total" :show-page="true"></lay-page>
</template>
<script>
@@ -24,13 +24,11 @@ export default {
const limit = ref(20)
const total = ref(100)
const showPage = ref(true)
const currentPage = ref(2);
return {
limit,
total,
showPage,
currentPage
}
}
@@ -39,13 +37,13 @@ export default {
:::
::: title 简模式
::: title 简模式
:::
::: demo
<template>
<lay-page :limit="limit" @limit="limit = $event" :total="total"></lay-page>
<lay-page :limit="limit1" v-model="current1" :total="total1"></lay-page>
</template>
<script>
@@ -54,12 +52,14 @@ import { ref } from 'vue'
export default {
setup() {
const limit = ref(20)
const total = ref(100)
const limit1 = ref(10);
const total1 = ref(100);
const current1 = ref(1);
return {
limit,
total
limit1,
total1,
current1
}
}
}
@@ -67,16 +67,13 @@ export default {
:::
::: title 插槽使用
::: title 设置主题
:::
::: demo
<template>
<lay-page :limit="limit" @limit="limit = $event" :total="total">
<template v-slot:prev>上</template>
<template v-slot:next>下</template>
</lay-page>
<lay-page :limit="limit2" :total="total2" :show-page="true" theme="blue"></lay-page>
</template>
<script>
@@ -85,12 +82,12 @@ import { ref } from 'vue'
export default {
setup() {
const limit = ref(20)
const total = ref(100)
const limit2 = ref(20)
const total2 = ref(100)
return {
limit,
total
limit2,
total2,
}
}
}
@@ -98,17 +95,13 @@ export default {
:::
::: title 不同主题
::: title 分页容量
:::
::: demo
<template>
<lay-page :limit="limit" @limit="limit = $event" :total="total" :show-page="showPage" theme="red"></lay-page>
<br>
<lay-page :limit="limit" @limit="limit = $event" :total="total" :show-page="showPage" theme="blue"></lay-page>
<br>
<lay-page :limit="limit" @limit="limit = $event" :total="total" :show-page="showPage" theme="orange"></lay-page>
<lay-page :limit="limit3" :total="total3" showCount showPage :limits="limits3"></lay-page>
</template>
<script>
@@ -117,14 +110,14 @@ import { ref } from 'vue'
export default {
setup() {
const limit = ref(20)
const total = ref(100)
const showPage = ref(true)
const limit3 = ref(5)
const total3 = ref(100)
const limits3 = ref([5, 10, 50, 100, 200])
return {
limit,
total,
showPage
limit3,
total3,
limits3
}
}
}
@@ -132,58 +125,33 @@ export default {
:::
::: title 指定分页容量
::: title 回调事件
:::
::: demo
<template>
<lay-page :limit="limit" :total="total" showCount showPage :limits="[10,50,100,200]" @limit="limit=$event"></lay-page>
<lay-page :limit="limit4" :total="total4" @change="change4" :show-page="true"></lay-page>
</template>
<script>
import { ref } from 'vue'
import { layer } from "@layui/layui-vue";
export default {
setup() {
const limit = ref(20)
const total = ref(100)
return {
limit,
total
const limit4 = ref(20)
const total4 = ref(100)
const change4 = ({ current, limit }) => {
layer.msg("current:" + current + " limit:" + limit);
}
}
}
</script>
:::
::: title 每页数量切换事件(limit)
:::
::: demo
<template>
<lay-page :limit="limit" showPage showCount :total="total" @limit="limit=$event" :show-limit="showLimit" ></lay-page>
<div>每页数量:{{limit}}</div>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
const limit = ref(5)
const total = ref(9999)
const showLimit = ref(true)
return {
limit,
total,
showLimit,
limit4,
total4,
change4
}
}
}
@@ -197,8 +165,12 @@ export default {
::: demo
<template>
<lay-page :limit="limit1" :pages="pages1" :total="total1" :show-count="showCount1" @limit="limit1=$event" :show-page="showPage1" :show-limit="showLimit1" :show-refresh="showRefresh1" :showSkip="showSkip1"></lay-page>
每页数量:{{limit1}}
<lay-button-container>
<lay-button type="primary" size="sm" @click="changeCurrent5">update model {{ current5 }}</lay-button>
<lay-button type="primary" size="sm" @click="changeLimit5">update limit {{ limit5 }}</lay-button>
</lay-button-container>
<br/>
<lay-page v-model="current5" v-model:limit="limit5" :pages="pages5" :total="total5" :show-count="true" :show-page="true" :show-limit="true" :show-refresh="true" :showSkip="true" @change="change5"></lay-page>
</template>
<script>
@@ -207,60 +179,27 @@ import { ref } from 'vue'
export default {
setup() {
const limit1 = ref(5)
const total1 = ref(99)
const showCount1 = ref(true)
const showPage1 = ref(true)
const showLimit1 = ref(true)
const showRefresh1 = ref(true)
const showSkip1 = ref(true)
const pages1 = ref(6);
return {
limit1,
total1,
pages1,
showCount1,
showPage1,
showLimit1,
showRefresh1,
showSkip1
const limit5 = ref(10)
const total5 = ref(99)
const pages5 = ref(6);
const current5 = ref(1);
const changeCurrent5 = () => {
current5.value = 2;
}
}
}
</script>
:::
::: title 页码切换事件(jump)
:::
::: demo
<template>
<lay-page :limit="limit" :total="total" @jump="jump" @limit="limit = $event" :show-page="showSkip"></lay-page>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
const limit = ref(20)
const total = ref(100)
const showPage = ref(true)
const showSkip = ref(true)
const jump = function({ current }) {
console.log("当前页:" + current)
const changeLimit5 = () => {
limit5.value = 20;
}
const change5 = ({ current, limit }) => {
layer.msg("current:" + current + " limit:" + limit);
}
return {
limit,
total,
jump,
showPage,
showSkip
limit5,
total5,
pages5,
current5,
changeCurrent5,
changeLimit5,
change5
}
}
}
@@ -294,10 +233,11 @@ export default {
::: table
| 事件 | 描述 | 参数 |
| ---- | -------- | --------------------- |
| jump | 切换回调 | { current: 当前页面 } |
| limit | 每页数量变化 | 变化后的值 |
| 事件 | 描述 | 参数 | 版本 |
| ---- | -------- | --------------------- |--------------------- |
| jump | 切换回调 | { current: 当前页面 } | `移除` |
| limit | 每页数量变化 | 变化后的值 | `移除` |
| change | 分页事件 | { current: 当前页码, limit: 每页数量 } | `1.4.3` |
:::

View File

@@ -13,8 +13,10 @@
::: demo 使用 `lay-scroll` 标签, 创建一个虚拟滚动容器
<template>
<lay-button @click="changeTotal">修改数据</lay-button>
<lay-button @click="changeMaxTotal">修改数据</lay-button>
<lay-scroll height="200px" style="background-color:whitesmoke;">
<lay-panel v-for="(n,index) in 50" :key="n" style="margin:10px;padding:10px;">内容</lay-panel>
<lay-panel v-for="(n,index) in total" :key="n" style="margin:10px;padding:10px;">内容</lay-panel>
</lay-scroll>
</template>
@@ -23,8 +25,20 @@ import { ref } from 'vue'
export default {
setup() {
const total = ref(50);
const changeTotal = () => {
total.value = 2;
}
const changeMaxTotal = () => {
total.value = 50;
}
return {
total,
changeTotal,
changeMaxTotal
}
}
}

View File

@@ -0,0 +1,245 @@
::: anchor
:::
::: title 基本介绍
:::
::: describe 控制组件之间的间距。
:::
::: title 基础使用
:::
::: demo 默认横向排列,控制相邻组件的水平间距
<template>
<lay-space>
<lay-button v-for="idx of 5" type="normal">按钮 {{idx}}</lay-button>
</lay-space>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
return {
}
}
}
</script>
:::
::: title 垂直方向
:::
::: demo 通过 `direction="vertical"` 设置垂直方向
<template>
<lay-space direction="vertical" fill wrap>
<lay-button v-for="idx of 5" type="normal" fluid="true">按钮 {{idx}}</lay-button>
</lay-space>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
return {
}
}
}
</script>
:::
::: title 间距大小
:::
::: demo 通过 `size` 控制组件大小 `xs, sm, md , lg`, 分别对应 `4px, 8px, 16px, 24px` 的间距,默认`md``size` 也支持通过数组设置间距 `[row-gap, column-gap]`
<template>
<lay-radio
v-for="sizeKey of sizeKeys"
v-model="sizeSelected"
name="action"
:value="sizeKey"
@change="changeSize">
{{sizeKey}}
</lay-radio>
<br><br>
<lay-space :size="spaceSize">
<lay-button v-for="idx of 5" type="normal">按钮 {{idx}}</lay-button>
</lay-space>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
const sizeKeys = ["xs","sm","md","lg"];
const spaceSize = ref();
const sizeSelected = ref("sm");
const changeSize = function( key ) {
spaceSize.value = key;
}
return {
sizeSelected,
changeSize,
spaceSize,
}
}
}
</script>
:::
::: title 自定义间距大小
:::
::: demo
<template>
<lay-slider v-model="customSize"></lay-slider>
<br><br>
<lay-space :size="customSize">
<lay-button v-for="idx of 5" type="normal">按钮 {{idx}}</lay-button>
</lay-space>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
const customSize = ref(8);
return {
customSize,
}
}
}
</script>
:::
::: title 对齐方式
:::
::: demo
<template>
<lay-radio
v-for="alignKey of alignKeys"
v-model="alignSelected"
name="action"
:value="alignKey"
@change="changeAlign">
{{alignKey}}
</lay-radio>
<br><br>
<lay-space :align="spaceAlign" style="backgroundColor: whitesmoke;padding: 10px;">
<span>Space:</span>
<lay-button>默认按钮</lay-button>
<lay-card title="标题">
内容
</lay-card>
</lay-space>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
const alignKeys = ["start", "center","end","baseline"];
const spaceAlign = ref();
const alignSelected = ref("center");
const changeAlign = function( key ) {
spaceAlign.value = key;
}
return {
alignSelected,
changeAlign,
spaceAlign,
}
}
}
</script>
:::
::: title 自动换行
:::
::: demo
<template>
<lay-space wrap :size="[16,24]">
<lay-button v-for="_ of 20">默认按钮{{_}}</lay-button>
</lay-space>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
return {
}
}
}
</script>
:::
::: title Space 属性
:::
::: table
| 属性 | 描述 | 类型 | 默认值 | 可选值 |
| ----------- | -------- | ------ | ------ | ------ |
| align | 对齐方式 | string| `center`| `start` `end` `center` `baseline`|
| direction | 间距方向 | string | `horizontal` | `horizontal` `vertical`|
| fill | 子元素是否填充父容器 | boolean| `false`| -|
| size | 间距大小 | string | md | `lg` `md` `sm` `xs` `number` `string` `[spaceSize,spaceSize]`|
| wrap | 是否自动折行 | boolean| `false`| -|
:::
>`type spaceSize = "lg" | "md" | "sm" | "xs" | number | string`
> `[row-gap, column-gap], eg: ['xs','md'] ['10px', '15px'] [10, 15]`
:::title Space 插槽
:::
:::table
| 插槽 | 描述 | 参数 |
|------ |----------|-----------|
| default | 默认插槽 | - |
:::
::: contributor space
:::
::: previousNext space
:::

View File

@@ -119,23 +119,26 @@ export default {
::: demo
<template>
page props: {{ page3 }}
<lay-table :columns="columns3" :data-source="dataSource3" :page="page3" @change="change3"></lay-table>
</template>
<script>
import { ref } from 'vue'
import { ref } from 'vue';
import { layer } from "@layui/layer-vue";
export default {
setup() {
const page3 = {
const page3 = ref({
total: 100,
limit: 10,
current: 2
}
current: 2,
showRefresh: true,
})
const change3 = function({ current }){
console.log("当前页:" + JSON.stringify(current))
const change3 = ({ current, limit }) => {
layer.msg("current:" + current + " limit:" + limit);
}
const columns3 = [
@@ -697,8 +700,9 @@ export default {
::: demo 通过 `columns` 配置 `type:'checkbox'` 开启单选列。
<template>
<lay-button @click="changeSelectedKeys">修改选中值 {{ selectedKeys5 }}</lay-button>
<lay-table :columns="columns23" :data-source="dataSource23" v-model:selectedKeys="selectedKeys5" :getCheckboxProps="getCheckboxProps"></lay-table>
<lay-button @click="changeSelectedKeys">修改选中</lay-button>
<lay-button @click="changeDataSource23">修改数据</lay-button>
<lay-table :columns="columns23" :data-source="dataSource23" v-model:selectedKeys="selectedKeys5"></lay-table>
</template>
<script>
@@ -720,14 +724,23 @@ export default {
selectedKeys5.value = ["2"]
}
const changeDataSource23 = () => {
dataSource23.value = [
{id:"1",username:"root", password:"root",sex:"男", age:"18", remark: 'layui - vue谐音类 UI) '},
{id:"2",username:"root", password:"root",sex:"男", age:"18", remark: 'layui - vue谐音类 UI) '}
]
}
const columns23 = [
{
fixed: "left",
type: "checkbox",
},
{
title:"账户",
width:"200px",
key:"username"
key:"username",
fixed: "left"
},{
title:"密码",
width: "300px",
@@ -747,20 +760,21 @@ export default {
}
]
const dataSource23 = [
const dataSource23 = ref([
{id:"1",username:"root", password:"root",sex:"男", age:"18", remark: 'layui - vue谐音类 UI) '},
{id:"2",username:"root", password:"root",sex:"男", age:"18", remark: 'layui - vue谐音类 UI) '},
{id:"3",username:"woow", password:"woow",sex:"男", age:"20", remark: 'layui - vue谐音类 UI) '},
{id:"4",username:"woow", password:"woow",sex:"男", age:"20", remark: 'layui - vue谐音类 UI) '},
{id:"5",username:"woow", password:"woow",sex:"男", age:"20", remark: 'layui - vue谐音类 UI) '}
]
])
return {
columns23,
dataSource23,
selectedKeys5,
changeSelectedKeys,
getCheckboxProps
getCheckboxProps,
changeDataSource23
}
}
}
@@ -1455,7 +1469,7 @@ export default {
| row | 行单击 | data : 当前行 |
| row-double | 行双击 | data : 当前行 |
| row-contextmenu | 行右击 | data : 当前行 |
| change | 分页事件 | { current: 当前页码, limit: 每页数量 } |
:::
::: title Table 插槽
@@ -1463,9 +1477,10 @@ export default {
::: table
| 插槽 | 描述 | 参数 |
| ------- | ------------ | ---- |
| toolbar | 自定义工具栏 | -- |
| 插槽 | 描述 | 参数 | 版本 |
| ------- | ------------ | ---- |---- |
| toolbar | 自定义工具栏 | -- |-- |
| footer | 底部扩展 | -- | `1.4.4` |
:::
@@ -1476,7 +1491,7 @@ export default {
::: table
| 插槽 | 描述 | 类型 | 默认值 | 可选值 | 可选值 |
| 插槽 | 描述 | 类型 | 默认值 | 可选值 | 版本 |
| --------------- | ------------------------------ | --------- | ------- | --------------------------- | --------------------------- |
| title | 列标题 | -- | -- | -- | -- |
| key | 数据字段 | -- | -- | -- | -- |

View File

@@ -13,7 +13,7 @@
::: demo 使用 `lay-upload` 标签, 创建一个上传按钮
<template>
<lay-upload @done="getUploadFile" @choose="beginChoose">
<lay-upload @done="getUploadFile" field="bigFile" @choose="beginChoose">
<template #preview>
<div v-for="(item,index) in picList" :key="`demo1-pic-'${index}`">
<img :src="item"/>
@@ -249,7 +249,7 @@ export default {
| url | 服务端上传接口的地址 | string | -- | -- |
| data | 请求上传接口的额外参数 | object | -- | -- |
| headers | 接口的请求头 | object | -- | -- |
| acceptMime | 文件选择框时的可选文件类型 | string | `images` | `images` |
| acceptMime | 文件选择框时的可选文件类型 | string | `MIME_type` | `MIME_type` |
| field | 设定文件域的字段名 | string | `file` | -- |
| size | 设置文件最大可允许上传的大小,单位 KB。不支持ie8/9 | number | `0(不限制)` | -- |
| multiple | 是否允许多文件上传。设置 true即可开启。不支持ie8/9 | boolean | false | -- |

View File

@@ -10,6 +10,115 @@
::: demo
<template>
<lay-timeline>
<lay-timeline-item title="1.4.x">
<ul>
<a name="1-4-6"></a>
<li>
<h3>1.4.6 <span class="layui-badge-rim">2022-0x-xx</span></h3>
<ul>
<li>[修复] dropdown 组件 hide 事件触发异常。</li>
<li>[优化] dropdown 组件 open 方法修改为 show 方法。</li>
</ul>
</li>
</ul>
<ul>
<a name="1-4-5"></a>
<li>
<h3>1.4.5 <span class="layui-badge-rim">2022-08-26</span></h3>
<ul>
<li>[修复] upload 组件 field 属性无效。</li>
<li>[修复] upload 组件 acceptMime 属性 默认值 无效。</li>
<li>[修复] menu 组件 changeOpenKeys 事件, 初始化时回调的问题。</li>
<li>[修复] dropdown 组件 popupContainer 不适用于 vue 自身渲染的元素的问题。</li>
<li>[优化] table 组件 page 属性, 与 page 组件属性对应, 并全部启用。 </li>
<li>[优化] input 组件 password 属性, 在 edge 的兼容问题。 </li>
<li>[优化] page 组件 total 属性为 0 时, 下一页仍可用的问题。</li>
<li>[优化] upload 组件 acceptMime 属性默认值为 MIME_type。</li>
</ul>
</li>
</ul>
<ul>
<a name="1-4-4"></a>
<li>
<h3>1.4.4 <span class="layui-badge-rim">2022-08-18</span></h3>
<ul>
<li>[新增] table 组件 footer 插槽, 用在 page 与 body 之间自定义内容。</li>
<li>[修复] date-picker 组件 v-model 为空时, 无法完成日期时间选择。</li>
<li>[修复] quote 组件 margin 属性错误 。</li>
</ul>
</li>
</ul>
<ul>
<a name="1-4-3"></a>
<li>
<h3>1.4.3 <span class="layui-badge-rim">2022-08-16</span></h3>
<ul>
<li>[新增] page 组件 change 事件。</li>
<li>[新增] card 组件 footer 插槽, 用于自定义底部。</li>
<li>[新增] table 组件 change 事件 limit 参数, 代表每页数量。</li>
<li>[修复] scroll 组件 default slots 改变时, 滑块不更新的问题。</li>
<li>[修复] table 组件 loading 属性造成的单元格错位。</li>
<li>[优化] page 组件 跳转 操作, 当输入页码为当前页启用禁用状态。</li>
<li>[过时] page 组件 limit 事件, 由 change 事件代替。</li>
<li>[过时] page 组件 jump 事件, 由 change 事件代替。</li>
</ul>
</li>
</ul>
<ul>
<a name="1-4-2"></a>
<li>
<h3>1.4.2 <span class="layui-badge-rim">2022-08-15</span></h3>
<ul>
<li>[修复] table 组件 fixed 属性开启时, 不设置 width 产生的错误。</li>
<li>[修复] table 组件 dataSource 属性改变时, 清空 selectedKeys 内容。</li>
<li>[修复] table 组件 dataSource 属性改变时, 清空 selectedKey 内容。</li>
<li>[优化] table 组件 fixed 属性开启时, 根据 column 的 type 属性, 设置默认宽度。 </li>
</ul>
</li>
</ul>
<ul>
<a name="1-4-1"></a>
<li>
<h3>1.4.1 <span class="layui-badge-rim">2022-08-14</span></h3>
<ul>
<li>[修复] 表格开启复选框之后不使用getCheckboxProps属性点击时全选会报错。</li>
</ul>
</li>
</ul>
<ul>
<a name="1-4-0"></a>
<li>
<h3>1.4.0 <span class="layui-badge-rim">2022-08-13</span></h3>
<ul>
<li>[新增] button 组件 dropdown 下拉 demo。</li>
<li>[新增] button 组件 loading-icon 属性, 允许自定义加载图标。</li>
<li>[新增] table 组件 loading 属性, 数据过渡。</li>
<li>[新增] table 组件 column 属性 children 配置, 支持表头分组。</li>
<li>[新增] table 组件 getRadioProps 属性, 启用单选列时, 定义 radio 配置选项。</li>
<li>[新增] table 组件 getCheckboxProps 属性, 启用复选列, 定义 checkbox 配置选项。</li>
<li>[新增] transfer 组件 datasource 属性 disabled 配置, 允许选项禁用。</li>
<li>[新增] switch 组件 loading 属性, 开启加载状态, 默认为 false。</li>
<li>[新增] switch 组件 loading-icon 属性, 允许自定义加载图标, 可选值为内置图标集。</li>
<li>[新增] date-picker 组件 prefix-icon 属性, 用于自定义输入框前置图标, layui-icon-date 为默认值。</li>
<li>[新增] date-picker 组件 suffix-icon 属性, 用于自定义输入框后置图标。</li>
<li>[修复] table 组件 column 属性为 fixed 时, 隐藏该列时不重新计算距离。</li>
<li>[修复] input 组件 v-model 属性输入拼字阶段触发更新的问题。</li>
<li>[修复] table 组件 height 属性修改时, 造成单元格错位。</li>
<li>[修复] table 组件 demand 模式缺失 radio.css 文件。</li>
<li>[修复] menu 组件 demand 模式缺失 dropdown.css 文件。</li>
<li>[修复] textarea 组件无法解析 lay-icon 的警告。</li>
<li>[优化] input 组件 password 属性开启时的默认图标。</li>
<li>[优化] table 组件 dropdown 筛选列面板随滚动条移动。</li>
<li>[优化] table 组件 column 无对应列时仍保持列占位。</li>
<li>[优化] table 组件 skin 属性为 row 时 header 高出 1 像素。</li>
<li>[优化] transfer 组件 title 在特殊分辨率下显示不全。</li>
<li>[优化] notice-bar 组件 width 越界。</li>
<li>[优化] input 组件 clear 操作背景透明的问题。</li>
<li>[优化] input 组件 password 操作背景透明的问题。</li>
</ul>
</li>
</ul>
</lay-timeline-item>
<lay-timeline-item title="1.3.x">
<ul>
<a name="1-3-14"></a>

View File

@@ -429,6 +429,11 @@ const zhCN = [
component: () => import("../document/zh-CN/components/tagInput.md"),
meta: { title: "标签" },
},
{
path: "/zh-CN/components/space",
component: () => import("../document/zh-CN/components/space.md"),
meta: { title: "间距" },
},
],
},
],

View File

@@ -32,7 +32,7 @@
>
<span
>{{ t("home.download") }}<em class="site-showdowns"
>20,894</em
>24,177</em
></span
>
</div>
@@ -43,7 +43,7 @@
rel="nofollow"
class="site-star"
>
<i class="layui-icon"></i> Star <cite id="getStars">1398</cite>
<i class="layui-icon"></i> Star <cite id="getStars">1465</cite>
</a>
<a
href="https://gitee.com/layui-vue"
@@ -179,14 +179,14 @@
</lay-tooltip>
</lay-col>
<lay-col :md="3">
<lay-tooltip content="Pear Admin" position="top">
<lay-tooltip content="Sa-Token" position="top">
<a
style="height: 40px; display: inline-block"
href="http://www.pearadmin.com"
href="https://sa-token.dev33.cn/"
target="_blank"
>
<lay-avatar
src="https://portrait.gitee.com/uploads/avatars/namespace/2319/6958819_pear-admin_1643085106.png!avatar100"
src="https://sa-token.dev33.cn/doc/logo.png"
style="background: transparent"
></lay-avatar>
</a>

View File

@@ -88,6 +88,12 @@ const menus = [
subTitle: "skeleton",
path: "/zh-CN/components/skeleton",
},
{
id: 12,
title: "间距",
subTitle: "space",
path: "/zh-CN/components/space",
},
],
},
{
@@ -427,26 +433,6 @@ const menus = [
},
],
},
{
id: 1,
title: "新特性",
children: [
{
id: 101,
title: "标签",
flag: "new",
subTitle: "modal",
path: "/zh-CN/components/tag",
},
{
id: 102,
title: "标签输入框",
flag: "new",
subTitle: "load",
path: "/zh-CN/components/tagInput",
},
],
},
];
export default menus;