<template>
    <el-button text @click="outerVisible = true">open the outer Dialog</el-button>

    <el-dialog v-model="outerVisible" title="Outer Dialog">
        <template #default>
            <el-dialog v-model="innerVisible" width="30%" title="Inner Dialog" append-to-body />
        </template>
        <template #footer>
            <div class="dialog-footer">
                <el-button @click="outerVisible = false">Cancel</el-button>
                <el-button type="primary" @click="innerVisible = true">open the inner Dialog</el-button>
            </div>
        </template>
    </el-dialog>
</template>

<script lang="ts" setup>
import { ref } from 'vue'

const outerVisible = ref(false)
const innerVisible = ref(false)
</script>
<style scoped>
.dialog-footer button:first-child {
    margin-right: 10px;
}
</style>
