<template>
|
<el-dialog
|
:destroy-on-close="destroyOnClose"
|
v-model="isShow"
|
draggable
|
:width="width"
|
:close-on-click-modal="closeOnClickModal"
|
@closed="handleClosedClick"
|
>
|
<template #header>
|
<div style="color: #fff">
|
<SvgIcon
|
v-if="showHeaderIcon"
|
:name="headerIcon"
|
:size="16"
|
style="margin-right: 3px; display: inline; vertical-align: middle"
|
/>
|
<span> {{ title }} </span>
|
</div>
|
</template>
|
<slot></slot>
|
<template #footer v-if="showFooter">
|
<div>
|
<el-button @click="handleCloseClick">取 消</el-button>
|
<el-button type="primary" @click="handleSubmitClick">确 定</el-button>
|
</div>
|
</template>
|
</el-dialog>
|
</template>
|
|
<script setup lang="ts">
|
import { computed, toRef } from 'vue';
|
import { useYWDialog } from '/@/components/dialog/use-yw-dialog';
|
import { YWDialogEmits, YWDialogProps } from '/@/components/dialog/yw-dialog';
|
|
const props = defineProps(YWDialogProps);
|
const emits = defineEmits(YWDialogEmits);
|
const isShow = defineModel({
|
type: Boolean,
|
default: false,
|
});
|
|
|
const { handleCloseClick, handleSubmitClick, handleClosedClick } = useYWDialog(props, emits);
|
</script>
|
<style scoped lang="scss"></style>
|