Skip to content

Commit 2971ccc

Browse files
authored
docs: docs modal z-index fixed, update alert docs (vbenjs#5930)
1 parent 4a2c7b3 commit 2971ccc

File tree

3 files changed

+44
-6
lines changed

3 files changed

+44
-6
lines changed

apps/web-ele/src/views/demos/form/basic.vue

+13-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<script lang="ts" setup>
22
import { h } from 'vue';
33
4-
import { Page } from '@vben/common-ui';
4+
import { Page, useVbenDrawer } from '@vben/common-ui';
55
66
import { ElButton, ElCard, ElCheckbox, ElMessage } from 'element-plus';
77
@@ -17,11 +17,16 @@ const [Form, formApi] = useVbenForm({
1717
},
1818
layout: 'horizontal',
1919
// 大屏一行显示3个,中屏一行显示2个,小屏一行显示1个
20-
wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3',
20+
// wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3',
2121
handleSubmit: (values) => {
2222
ElMessage.success(`表单数据:${JSON.stringify(values)}`);
2323
},
2424
schema: [
25+
{
26+
component: 'IconPicker',
27+
fieldName: 'icon',
28+
label: 'IconPicker',
29+
},
2530
{
2631
// 组件需要在 #/adapter.ts内注册,并加上类型
2732
component: 'ApiSelect',
@@ -149,6 +154,8 @@ const [Form, formApi] = useVbenForm({
149154
},
150155
],
151156
});
157+
158+
const [Drawer, drawerApi] = useVbenDrawer();
152159
function setFormValues() {
153160
formApi.setValues({
154161
string: 'string',
@@ -168,14 +175,17 @@ function setFormValues() {
168175
description="我们重新包装了CheckboxGroup、RadioGroup、Select,可以通过options属性传入选项属性数组以自动生成选项"
169176
title="表单演示"
170177
>
178+
<Drawer class="w-[600px]" title="基础表单示例">
179+
<Form />
180+
</Drawer>
171181
<ElCard>
172182
<template #header>
173183
<div class="flex items-center">
174184
<span class="flex-auto">基础表单演示</span>
175185
<ElButton type="primary" @click="setFormValues">设置表单值</ElButton>
176186
</div>
177187
</template>
178-
<Form />
188+
<ElButton type="primary" @click="drawerApi.open"> 打开抽屉 </ElButton>
179189
</ElCard>
180190
</Page>
181191
</template>

docs/.vitepress/theme/styles/variables.css

+5
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,11 @@
104104
--vp-custom-block-tip-text: var(--vp-c-text-1);
105105
--vp-custom-block-tip-bg: var(--vp-c-brand-soft);
106106
--vp-custom-block-tip-code-bg: var(--vp-c-brand-soft);
107+
108+
/**
109+
* modal zIndex
110+
*/
111+
--popup-z-index: 1000;
107112
}
108113

109114
@media (min-width: 640px) {

docs/src/demos/vben-alert/prompt/index.vue

+26-3
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { h } from 'vue';
33
44
import { alert, prompt, VbenButton } from '@vben/common-ui';
55
6-
import { Input, RadioGroup } from 'ant-design-vue';
6+
import { Input, RadioGroup, Select } from 'ant-design-vue';
77
import { BadgeJapaneseYen } from 'lucide-vue-next';
88
99
function showPrompt() {
@@ -18,7 +18,7 @@ function showPrompt() {
1818
});
1919
}
2020
21-
function showSelectPrompt() {
21+
function showSlotsPrompt() {
2222
prompt({
2323
component: Input,
2424
componentProps: {
@@ -37,14 +37,36 @@ function showSelectPrompt() {
3737
});
3838
}
3939
40+
function showSelectPrompt() {
41+
prompt({
42+
component: Select,
43+
componentProps: {
44+
options: [
45+
{ label: 'Option A', value: 'Option A' },
46+
{ label: 'Option B', value: 'Option B' },
47+
{ label: 'Option C', value: 'Option C' },
48+
],
49+
placeholder: '请选择',
50+
// 弹窗会设置body的pointer-events为none,这回影响下拉框的点击事件
51+
popupClassName: 'pointer-events-auto',
52+
},
53+
content: '此弹窗演示了如何使用component传递自定义组件',
54+
icon: 'question',
55+
modelPropName: 'value',
56+
}).then((val) => {
57+
if (val) {
58+
alert(`你选择了${val}`);
59+
}
60+
});
61+
}
62+
4063
function sleep(ms: number) {
4164
return new Promise((resolve) => setTimeout(resolve, ms));
4265
}
4366
4467
function showAsyncPrompt() {
4568
prompt({
4669
async beforeClose(scope) {
47-
console.log(scope);
4870
if (scope.isConfirm) {
4971
if (scope.value) {
5072
// 模拟异步操作,如果不成功,可以返回false
@@ -75,6 +97,7 @@ function showAsyncPrompt() {
7597
<template>
7698
<div class="flex gap-4">
7799
<VbenButton @click="showPrompt">Prompt</VbenButton>
100+
<VbenButton @click="showSlotsPrompt"> Prompt With slots </VbenButton>
78101
<VbenButton @click="showSelectPrompt">Prompt With Select</VbenButton>
79102
<VbenButton @click="showAsyncPrompt">Prompt With Async</VbenButton>
80103
</div>

0 commit comments

Comments
 (0)