br-dionysus 1.6.6 → 1.6.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +90 -52
- package/attributes.json +1 -1
- package/dist/br-dionysus.es.js +4659 -4595
- package/dist/br-dionysus.umd.js +8 -8
- package/dist/index.css +1 -1
- package/dist/packages/MTable/src/MTable.vue.d.ts +21 -0
- package/dist/packages/MTable/src/token.d.ts +10 -1
- package/docs/assets/README-BIIm2ID5.css +1 -0
- package/docs/assets/README-BVC502ud.js +1 -0
- package/docs/assets/README-BaVHXTcr.js +1 -0
- package/docs/assets/README-BkoXPzeT.js +1 -0
- package/docs/assets/README-BpY9wwJ5.js +1 -0
- package/docs/assets/README-BxVIiLkB.css +1 -0
- package/docs/assets/README-C8q4oePg.css +1 -0
- package/docs/assets/README-C9E9QEak.js +1 -0
- package/docs/assets/README-CJnIKztR.css +1 -0
- package/docs/assets/README-CPi9K5cm.css +1 -0
- package/docs/assets/README-CVikrcuu.js +1 -0
- package/docs/assets/README-CwxKEz5n.js +1 -0
- package/docs/assets/README-D-sCcuuV.js +1 -0
- package/docs/assets/README-D1NyMPDh.css +1 -0
- package/docs/assets/README-D8dRnWkj.css +1 -0
- package/docs/assets/README-DC5fWcO7.css +1 -0
- package/docs/assets/README-DFookNbq.js +1 -0
- package/docs/assets/README-DJM0QNOa.css +1 -0
- package/docs/assets/README-DJsWJjpr.js +2 -0
- package/docs/assets/README-DZH0ZBFE.js +1 -0
- package/docs/assets/README-DuLXE9ma.css +1 -0
- package/docs/assets/README-DxdjMTiZ.js +1 -0
- package/docs/assets/README-DxzXrur_.js +1 -0
- package/docs/assets/README-ZSEyYWl3.css +1 -0
- package/docs/assets/empty-BHv0FmNK.png +0 -0
- package/docs/assets/index-B3d27dSP.js +66 -0
- package/docs/assets/index-BeGJML3j.css +1 -0
- package/docs/index.html +14 -0
- package/docs/packages/Hook/usePackageConfig/README.md +35 -0
- package/docs/packages/Hook/usePackageConfig/demo.vue +28 -0
- package/docs/packages/Hook/usePackageConfig/usePackageConfig.ts +39 -0
- package/docs/packages/Hook/useRemainingSpace/README.md +26 -0
- package/docs/packages/Hook/useRemainingSpace/useRemainingSpace.ts +148 -0
- package/docs/packages/Hook/useTableConfig/README.md +50 -0
- package/docs/packages/Hook/useTableConfig/demo.vue +134 -0
- package/docs/packages/Hook/useTableConfig/useTableConfig.ts +173 -0
- package/docs/packages/Hook/useZIndex/README.md +6 -0
- package/docs/packages/Hook/useZIndex/useGlobalZIndex.ts +34 -0
- package/docs/packages/MDialog/docs/README.md +26 -0
- package/docs/packages/MDialog/docs/demo.vue +72 -0
- package/docs/packages/MDialog/index.ts +10 -0
- package/docs/packages/MDialog/src/MDialog.vue +150 -0
- package/docs/packages/MInline/docs/README.md +26 -0
- package/docs/packages/MInline/docs/demo.vue +138 -0
- package/docs/packages/MInline/index.ts +10 -0
- package/docs/packages/MInline/src/MInline.vue +284 -0
- package/docs/packages/MInputNumber/docs/README.md +35 -0
- package/docs/packages/MInputNumber/docs/demo.vue +17 -0
- package/docs/packages/MInputNumber/index.ts +10 -0
- package/docs/packages/MInputNumber/src/MInputNumber.vue +268 -0
- package/docs/packages/MSelect/docs/README.md +20 -0
- package/docs/packages/MSelect/docs/demo.vue +36 -0
- package/docs/packages/MSelect/index.ts +17 -0
- package/docs/packages/MSelect/src/MOption.vue +43 -0
- package/docs/packages/MSelect/src/MSelect.vue +57 -0
- package/docs/packages/MSelect/src/token.ts +8 -0
- package/docs/packages/MSelectTable/docs/README.md +88 -0
- package/docs/packages/MSelectTable/docs/demo.vue +196 -0
- package/docs/packages/MSelectTable/index.ts +10 -0
- package/docs/packages/MSelectTable/src/MSelectTable.vue +493 -0
- package/docs/packages/MSelectTableV1/docs/README.md +49 -0
- package/docs/packages/MSelectTableV1/docs/demo.vue +77 -0
- package/docs/packages/MSelectTableV1/index.ts +10 -0
- package/docs/packages/MSelectTableV1/src/MSelectTableV1.vue +460 -0
- package/docs/packages/MSelectV2/docs/README.md +31 -0
- package/docs/packages/MSelectV2/docs/demo.vue +36 -0
- package/docs/packages/MSelectV2/index.ts +10 -0
- package/docs/packages/MSelectV2/src/MSelectV2.vue +116 -0
- package/docs/packages/MTable/docs/README.md +40 -0
- package/docs/packages/MTable/docs/demo.vue +93 -0
- package/docs/packages/MTable/index.ts +10 -0
- package/docs/packages/MTable/src/MTable.vue +228 -0
- package/docs/packages/MTable/src/token.ts +9 -0
- package/docs/packages/MTableColumn/docs/README.md +22 -0
- package/docs/packages/MTableColumn/docs/demo.vue +110 -0
- package/docs/packages/MTableColumn/index.ts +10 -0
- package/docs/packages/MTableColumn/src/MTableColumn.vue +345 -0
- package/docs/packages/MTableColumnSet/docs/README.md +31 -0
- package/docs/packages/MTableColumnSet/docs/demo.vue +36 -0
- package/docs/packages/MTableColumnSet/index.ts +10 -0
- package/docs/packages/MTableColumnSet/src/MTableColumnSet.vue +310 -0
- package/docs/packages/README.md +10 -0
- package/docs/packages/SkinConfig/docs/README.md +42 -0
- package/docs/packages/SkinConfig/docs/demo.vue +680 -0
- package/docs/packages/SkinConfig/index.ts +10 -0
- package/docs/packages/SkinConfig/src/SkinConfig.vue +478 -0
- package/docs/packages/SkinConfig/src/useSkin.ts +230 -0
- package/docs/packages/TabPage/docs/README.md +10 -0
- package/docs/packages/TabPage/docs/demo.vue +96 -0
- package/docs/packages/TabPage/index.ts +10 -0
- package/docs/packages/TabPage/src/TabPage.vue +566 -0
- package/docs/packages/Tool/moneyFormat/README.md +15 -0
- package/docs/packages/Tool/moneyFormat/moneyFormat.ts +69 -0
- package/docs/packages/index.ts +61 -0
- package/docs/packages/list.json +80 -0
- package/docs/packages/typings/class.ts +22 -0
- package/docs/packages/typings/enum.ts +9 -0
- package/docs/packages/typings/global.d.ts +69 -0
- package/docs/packages/typings/interface.ts +6 -0
- package/package.json +1 -1
- package/packages/MTable/docs/README.md +22 -17
- package/packages/MTable/docs/demo.vue +15 -1
- package/packages/MTable/src/MTable.vue +54 -6
- package/packages/MTable/src/token.ts +11 -2
- package/packages/MTableColumn/docs/README.md +8 -8
- package/packages/MTableColumn/src/MTableColumn.vue +72 -6
- package/tags.json +1 -1
- package/web-types.json +1 -1
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { watch } from 'vue'
|
|
2
|
+
import type { Ref } from 'vue'
|
|
3
|
+
import { useZIndex } from 'element-plus'
|
|
4
|
+
|
|
5
|
+
interface ZIndexType {
|
|
6
|
+
/** 初始层级 */
|
|
7
|
+
initZIndex: Ref<number>,
|
|
8
|
+
/** 当前层级 */
|
|
9
|
+
currentZIndex: Ref<number>,
|
|
10
|
+
/** 下一层级 */
|
|
11
|
+
nextZIndex: Function
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
const zIndex: ZIndexType = useZIndex()
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* 获取全局层级
|
|
18
|
+
* */
|
|
19
|
+
const useGlobalZIndex = (externalZIndex: ZIndexType) => {
|
|
20
|
+
watch(() => externalZIndex.currentZIndex.value, () => {
|
|
21
|
+
const difference = externalZIndex.currentZIndex.value - zIndex.currentZIndex.value
|
|
22
|
+
for (let i = 0; i < difference; i++) {
|
|
23
|
+
zIndex.nextZIndex()
|
|
24
|
+
}
|
|
25
|
+
})
|
|
26
|
+
watch(() => zIndex.currentZIndex.value, () => {
|
|
27
|
+
const difference = zIndex.currentZIndex.value - externalZIndex.currentZIndex.value
|
|
28
|
+
for (let i = 0; i < difference; i++) {
|
|
29
|
+
externalZIndex.nextZIndex()
|
|
30
|
+
}
|
|
31
|
+
})
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export default useGlobalZIndex
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
<script setup>
|
|
2
|
+
import demo from './demo.vue'
|
|
3
|
+
</script>
|
|
4
|
+
|
|
5
|
+
对话框
|
|
6
|
+
=================
|
|
7
|
+
|
|
8
|
+
### 1) 基础用法
|
|
9
|
+
|
|
10
|
+
<Preview comp-name="MDialog" demo-name="demo">
|
|
11
|
+
<demo />
|
|
12
|
+
</Preview>
|
|
13
|
+
|
|
14
|
+
### 2) Attributes
|
|
15
|
+
|
|
16
|
+
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|
|
17
|
+
|--------|:-------------:|:-------:|:---:|:-----------------------------------------------:|
|
|
18
|
+
| resize | 是否开启拖拽改变大小 | boolean | - | false |
|
|
19
|
+
| 其余参数 | 参考el官网的dialog | - | - | https://element-plus.org/zh-CN/component/dialog |
|
|
20
|
+
|
|
21
|
+
### 2) Events
|
|
22
|
+
|
|
23
|
+
| 方法名 | 说明 | 参数 |
|
|
24
|
+
|---------|:-------------:|:------------------------------------------------------:|
|
|
25
|
+
| resized | 窗口大小改变完成事件 | (contentsSize: { width: number, height: number })内容物大小 |
|
|
26
|
+
| 其余参数 | 参考el官网的dialog | https://element-plus.org/zh-CN/component/dialog |
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div>
|
|
3
|
+
<p>弹窗</p>
|
|
4
|
+
<el-button @click="dialogVisible = true">默认</el-button>
|
|
5
|
+
<m-dialog
|
|
6
|
+
v-model="dialogVisible"
|
|
7
|
+
draggable
|
|
8
|
+
title="这是标题"
|
|
9
|
+
resize
|
|
10
|
+
@resized="test"
|
|
11
|
+
@opened="opened"
|
|
12
|
+
>
|
|
13
|
+
<div class="u-box j-box">
|
|
14
|
+
<p
|
|
15
|
+
class="u-table j-table"
|
|
16
|
+
:style="'height: ' + height + 'px'"
|
|
17
|
+
>
|
|
18
|
+
这是一条消息{{ height }}
|
|
19
|
+
</p>
|
|
20
|
+
<div>这是干扰元素</div>
|
|
21
|
+
<div class="u-pa">这是绝对<br/>定位元素</div>
|
|
22
|
+
</div>
|
|
23
|
+
<template #footer>
|
|
24
|
+
<div class="dialog-footer">
|
|
25
|
+
<el-button @click="dialogVisible = false">取消</el-button>
|
|
26
|
+
<el-button type="primary" @click="dialogVisible = false">
|
|
27
|
+
确认
|
|
28
|
+
</el-button>
|
|
29
|
+
</div>
|
|
30
|
+
</template>
|
|
31
|
+
</m-dialog>
|
|
32
|
+
</div>
|
|
33
|
+
</template>
|
|
34
|
+
|
|
35
|
+
<script setup lang="ts">
|
|
36
|
+
import { ref } from 'vue'
|
|
37
|
+
import { MDialog } from 'packages/MDialog'
|
|
38
|
+
import { useRemainingSpace } from 'packages/index'
|
|
39
|
+
|
|
40
|
+
const dialogVisible = ref<boolean>(false)
|
|
41
|
+
|
|
42
|
+
const test = (size: { width: number, height: number }) => {
|
|
43
|
+
// console.log('size', size)
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
const { height, init } = useRemainingSpace('j-box', 'j-table')
|
|
47
|
+
const opened = () => {
|
|
48
|
+
init()
|
|
49
|
+
}
|
|
50
|
+
</script>
|
|
51
|
+
|
|
52
|
+
<style scoped lang="scss">
|
|
53
|
+
.u-box {
|
|
54
|
+
//position: relative;
|
|
55
|
+
display: flex;
|
|
56
|
+
width: 100%;
|
|
57
|
+
height: 100%;
|
|
58
|
+
border: 1px solid #000;
|
|
59
|
+
flex-direction: column;
|
|
60
|
+
|
|
61
|
+
.u-table {
|
|
62
|
+
border: 1px solid red;
|
|
63
|
+
box-sizing: border-box;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.u-pa {
|
|
67
|
+
position: absolute;
|
|
68
|
+
bottom: 0;
|
|
69
|
+
right: 0;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
</style>
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<ElDialog
|
|
3
|
+
ref="dialogRef"
|
|
4
|
+
:class="boxClass"
|
|
5
|
+
:modalClass="modalClass"
|
|
6
|
+
:width="dialogWidth"
|
|
7
|
+
:draggable="props.draggable"
|
|
8
|
+
v-bind="$attrs"
|
|
9
|
+
v-model="props.modelValue"
|
|
10
|
+
>
|
|
11
|
+
<!-- 循环处理具名插槽 -->
|
|
12
|
+
<template
|
|
13
|
+
v-for="(slotData, name) in slots"
|
|
14
|
+
#[name]
|
|
15
|
+
>
|
|
16
|
+
<slot
|
|
17
|
+
v-if="name !== 'default'"
|
|
18
|
+
:name="name"
|
|
19
|
+
v-bind="slotData"
|
|
20
|
+
></slot>
|
|
21
|
+
<div
|
|
22
|
+
:data-mark="markDefault"
|
|
23
|
+
:style="'height: ' + dialogHeight"
|
|
24
|
+
v-if="name === 'default'"
|
|
25
|
+
>
|
|
26
|
+
<slot name="default"></slot>
|
|
27
|
+
</div>
|
|
28
|
+
</template>
|
|
29
|
+
</ElDialog>
|
|
30
|
+
</template>
|
|
31
|
+
|
|
32
|
+
<script setup lang="ts">
|
|
33
|
+
import { ref, useSlots, watch } from 'vue'
|
|
34
|
+
import { ElDialog } from 'element-plus'
|
|
35
|
+
import createHash from '../../../tool/createHash'
|
|
36
|
+
|
|
37
|
+
const slots = useSlots()
|
|
38
|
+
|
|
39
|
+
const emit = defineEmits<{
|
|
40
|
+
/** 窗口大小改变完成事件 */
|
|
41
|
+
resized: [contentsSize: { width: number, height: number }]
|
|
42
|
+
}>()
|
|
43
|
+
|
|
44
|
+
const props = withDefaults(defineProps<{
|
|
45
|
+
modelValue?: boolean,
|
|
46
|
+
/** @description 对话框的宽度,默认值为 50% */
|
|
47
|
+
width?: string | number,
|
|
48
|
+
/** @description 是否开启拖拽改变大小 */
|
|
49
|
+
resize?: boolean,
|
|
50
|
+
/** @description 是否可拖动 */
|
|
51
|
+
draggable?: boolean
|
|
52
|
+
}>(), {
|
|
53
|
+
modelValue: false,
|
|
54
|
+
width: '',
|
|
55
|
+
resize: false,
|
|
56
|
+
draggable: false
|
|
57
|
+
})
|
|
58
|
+
const boxClass = 'j-box-' + createHash(8)
|
|
59
|
+
const modalClass = 'j-modal-' + createHash(8)
|
|
60
|
+
const markDefault = createHash(8)
|
|
61
|
+
const luClass = 'j-lu-' + createHash(8)
|
|
62
|
+
const ldClass = 'j-ld-' + createHash(8)
|
|
63
|
+
const ruClass = 'j-ru-' + createHash(8)
|
|
64
|
+
const rdClass = 'j-rd-' + createHash(8)
|
|
65
|
+
/**
|
|
66
|
+
* @description 创建拖拽节点
|
|
67
|
+
* @param className
|
|
68
|
+
* @param direction 方向
|
|
69
|
+
*/
|
|
70
|
+
const createResizeDom = (className: string = '', direction: 'lu' | 'ld' | 'ru' | 'rd' = 'lu') => {
|
|
71
|
+
const style = 'width: 5px;height: 5px;'
|
|
72
|
+
let directionStyle = 'position: absolute;'
|
|
73
|
+
if (direction === 'lu') directionStyle += 'left: 0;top: 0;cursor: nwse-resize;'
|
|
74
|
+
if (direction === 'ld') directionStyle += 'left: 0;bottom: 0;cursor: nesw-resize;'
|
|
75
|
+
if (direction === 'ru') directionStyle += 'right: 0;top: 0;cursor: nesw-resize;'
|
|
76
|
+
if (direction === 'rd') directionStyle += 'right: 0;bottom: 0;cursor: nwse-resize;'
|
|
77
|
+
|
|
78
|
+
const dom: any | null = document.createElement('div')
|
|
79
|
+
if (!dom) return false
|
|
80
|
+
dom.className = `j-dialog-resize ${className}`
|
|
81
|
+
dom.style = `${style}${directionStyle}`
|
|
82
|
+
const boxDom: HTMLElement | null = document.querySelector('.' + boxClass)
|
|
83
|
+
if (!boxDom) return false
|
|
84
|
+
boxDom.appendChild(dom)
|
|
85
|
+
const defaultDom: HTMLElement | null = document.querySelector('[data-mark="' + markDefault + '"]')
|
|
86
|
+
dom.onmousedown = (event: MouseEvent) => {
|
|
87
|
+
drag = true
|
|
88
|
+
dragStartX = event.clientX
|
|
89
|
+
dragStartY = event.clientY
|
|
90
|
+
boxWidth = boxDom.clientWidth
|
|
91
|
+
if (!defaultDom) return false
|
|
92
|
+
boxHeight = defaultDom.clientHeight
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
let drag: boolean = false
|
|
96
|
+
let dragStartX: number = 0
|
|
97
|
+
let dragStartY: number = 0
|
|
98
|
+
const dialogWidth = ref<string | number>(props.width)
|
|
99
|
+
const dialogHeight = ref<string>('auto')
|
|
100
|
+
let recordingDialogWidth: number = 0
|
|
101
|
+
let recordingDialogHeight: number = 0
|
|
102
|
+
let boxWidth: number = 0
|
|
103
|
+
let boxHeight: number = 0
|
|
104
|
+
watch(
|
|
105
|
+
() => props.modelValue,
|
|
106
|
+
() => {
|
|
107
|
+
if (!props.resize) return false
|
|
108
|
+
const modalDom: HTMLElement | null = document.querySelector('.' + modalClass)
|
|
109
|
+
if (!modalDom) return false
|
|
110
|
+
modalDom.onmouseup = () => {
|
|
111
|
+
if (!drag) return false
|
|
112
|
+
drag = false
|
|
113
|
+
|
|
114
|
+
const defaultDom: HTMLElement | null = document.querySelector('[data-mark="' + markDefault + '"]')
|
|
115
|
+
if (!defaultDom) return false
|
|
116
|
+
emit('resized', {
|
|
117
|
+
width: defaultDom?.clientWidth,
|
|
118
|
+
height: recordingDialogHeight < 0 ? 0 : recordingDialogHeight
|
|
119
|
+
})
|
|
120
|
+
}
|
|
121
|
+
modalDom.onmousemove = (event: MouseEvent) => {
|
|
122
|
+
if (!drag) return false
|
|
123
|
+
recordingDialogWidth = boxWidth + (event.clientX - dragStartX) * 2
|
|
124
|
+
recordingDialogHeight = boxHeight + event.clientY - dragStartY
|
|
125
|
+
dialogWidth.value = recordingDialogWidth + 'px'
|
|
126
|
+
dialogHeight.value = recordingDialogHeight + 'px'
|
|
127
|
+
}
|
|
128
|
+
setTimeout(() => {
|
|
129
|
+
createResizeDom(luClass, 'lu')
|
|
130
|
+
createResizeDom(ldClass, 'ld')
|
|
131
|
+
createResizeDom(ruClass, 'ru')
|
|
132
|
+
createResizeDom(rdClass, 'rd')
|
|
133
|
+
})
|
|
134
|
+
}
|
|
135
|
+
)
|
|
136
|
+
|
|
137
|
+
const dialogRef = ref<InstanceType<typeof ElDialog> | null>(null)
|
|
138
|
+
|
|
139
|
+
defineExpose({
|
|
140
|
+
open: () => dialogRef?.value.open,
|
|
141
|
+
opened: () => dialogRef?.value.opened,
|
|
142
|
+
close: () => dialogRef?.value.close,
|
|
143
|
+
closed: () => dialogRef?.value.closed,
|
|
144
|
+
openAutoFocus: () => dialogRef?.value.openAutoFocus,
|
|
145
|
+
closeAutoFocus: () => dialogRef?.value.closeAutoFocus
|
|
146
|
+
})
|
|
147
|
+
</script>
|
|
148
|
+
|
|
149
|
+
<style scoped lang="scss">
|
|
150
|
+
</style>
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
<script setup>
|
|
2
|
+
import demo from './demo.vue'
|
|
3
|
+
</script>
|
|
4
|
+
|
|
5
|
+
筛选
|
|
6
|
+
=================
|
|
7
|
+
|
|
8
|
+
### 1) 基础用法
|
|
9
|
+
|
|
10
|
+
<Preview comp-name="MInline" demo-name="demo">
|
|
11
|
+
<demo />
|
|
12
|
+
</Preview>
|
|
13
|
+
|
|
14
|
+
### 2) Attributes
|
|
15
|
+
|
|
16
|
+
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|
|
17
|
+
|----------|:-----:|:------:|:-------------------------:|:-------:|
|
|
18
|
+
| minWidth | 列最小宽度 | number | - | 200 |
|
|
19
|
+
| maxWidth | 列最大宽度 | number | - | 300 |
|
|
20
|
+
| size | 组件尺寸 | enum | large \| default \| small | default |
|
|
21
|
+
|
|
22
|
+
### 2) Events
|
|
23
|
+
|
|
24
|
+
| 方法名 | 说明 | 参数 |
|
|
25
|
+
|--------|:----------------------:|:---------------:|
|
|
26
|
+
| switch | 当切换展开与折叠模式时触发,返回当前展开状态 | unfold(boolean) |
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="g-demo-m-inline-box">
|
|
3
|
+
<m-inline size="small">
|
|
4
|
+
<template #inlineBtn>
|
|
5
|
+
<el-button
|
|
6
|
+
type="primary"
|
|
7
|
+
size="small"
|
|
8
|
+
icon="Plus"
|
|
9
|
+
>
|
|
10
|
+
新增
|
|
11
|
+
</el-button>
|
|
12
|
+
<el-button
|
|
13
|
+
type="success"
|
|
14
|
+
size="small"
|
|
15
|
+
icon="Edit"
|
|
16
|
+
>
|
|
17
|
+
编辑
|
|
18
|
+
</el-button>
|
|
19
|
+
<el-button
|
|
20
|
+
type="warning"
|
|
21
|
+
size="small"
|
|
22
|
+
icon="Delete"
|
|
23
|
+
>
|
|
24
|
+
删除
|
|
25
|
+
</el-button>
|
|
26
|
+
</template>
|
|
27
|
+
<template #default>
|
|
28
|
+
<el-form
|
|
29
|
+
:model="formInline"
|
|
30
|
+
labelWidth="80px"
|
|
31
|
+
:showMessage="false"
|
|
32
|
+
size="small"
|
|
33
|
+
@submit.prevent
|
|
34
|
+
data-box
|
|
35
|
+
>
|
|
36
|
+
<el-form-item
|
|
37
|
+
label="编码"
|
|
38
|
+
prop="code"
|
|
39
|
+
data-item
|
|
40
|
+
>
|
|
41
|
+
<el-input
|
|
42
|
+
v-model="formInline.code"
|
|
43
|
+
clearable
|
|
44
|
+
placeholder="请输入编码"
|
|
45
|
+
>
|
|
46
|
+
</el-input>
|
|
47
|
+
</el-form-item>
|
|
48
|
+
<el-form-item
|
|
49
|
+
label="角色名"
|
|
50
|
+
prop="name"
|
|
51
|
+
data-item
|
|
52
|
+
>
|
|
53
|
+
<el-input
|
|
54
|
+
v-model="formInline.name"
|
|
55
|
+
clearable
|
|
56
|
+
placeholder="请输入角色名"
|
|
57
|
+
>
|
|
58
|
+
</el-input>
|
|
59
|
+
</el-form-item>
|
|
60
|
+
<el-form-item
|
|
61
|
+
label="时间"
|
|
62
|
+
prop="time"
|
|
63
|
+
data-item
|
|
64
|
+
>
|
|
65
|
+
<el-input
|
|
66
|
+
v-model="formInline.time"
|
|
67
|
+
clearable
|
|
68
|
+
placeholder="请输入时间"
|
|
69
|
+
>
|
|
70
|
+
</el-input>
|
|
71
|
+
</el-form-item>
|
|
72
|
+
<el-form-item
|
|
73
|
+
label="编码"
|
|
74
|
+
prop="code"
|
|
75
|
+
data-item
|
|
76
|
+
>
|
|
77
|
+
<el-input
|
|
78
|
+
v-model="formInline.code"
|
|
79
|
+
clearable
|
|
80
|
+
placeholder="请输入编码"
|
|
81
|
+
>
|
|
82
|
+
</el-input>
|
|
83
|
+
</el-form-item>
|
|
84
|
+
<el-form-item
|
|
85
|
+
label="角色名"
|
|
86
|
+
prop="name"
|
|
87
|
+
data-item
|
|
88
|
+
>
|
|
89
|
+
<el-input
|
|
90
|
+
v-model="formInline.name"
|
|
91
|
+
clearable
|
|
92
|
+
placeholder="请输入角色名"
|
|
93
|
+
>
|
|
94
|
+
</el-input>
|
|
95
|
+
</el-form-item>
|
|
96
|
+
<el-form-item
|
|
97
|
+
label="时间"
|
|
98
|
+
prop="time"
|
|
99
|
+
data-item
|
|
100
|
+
>
|
|
101
|
+
<el-input
|
|
102
|
+
v-model="formInline.time"
|
|
103
|
+
clearable
|
|
104
|
+
placeholder="请输入时间"
|
|
105
|
+
>
|
|
106
|
+
</el-input>
|
|
107
|
+
</el-form-item>
|
|
108
|
+
</el-form>
|
|
109
|
+
</template>
|
|
110
|
+
<template #submitBtn>
|
|
111
|
+
<el-button
|
|
112
|
+
type="primary"
|
|
113
|
+
icon="Search"
|
|
114
|
+
size="small"
|
|
115
|
+
>
|
|
116
|
+
搜索
|
|
117
|
+
</el-button>
|
|
118
|
+
</template>
|
|
119
|
+
</m-inline>
|
|
120
|
+
</div>
|
|
121
|
+
</template>
|
|
122
|
+
|
|
123
|
+
<script setup lang="ts">
|
|
124
|
+
import { reactive } from 'vue'
|
|
125
|
+
|
|
126
|
+
// 列表过滤条件表单
|
|
127
|
+
const formInline = reactive({
|
|
128
|
+
name: '',
|
|
129
|
+
code: '',
|
|
130
|
+
time: ''
|
|
131
|
+
})
|
|
132
|
+
</script>
|
|
133
|
+
|
|
134
|
+
<style scoped>
|
|
135
|
+
.g-demo-m-inline-box {
|
|
136
|
+
max-width: 1000px;
|
|
137
|
+
}
|
|
138
|
+
</style>
|