Files
element-plus/docs/examples/message-box/distinguishable-close-cancel.vue
sea ade87f6729 docs(examples): standardize unified code format and fix some type (#16370)
* docs: standardize unified example code format and fix some example type

* docs:  update some example type

* Update docs/examples/descriptions/sizes.vue

Co-authored-by: kooriookami <38392315+kooriookami@users.noreply.github.com>

* docs: update example-page-header

* docs: update example-page-header

---------

Co-authored-by: kooriookami <38392315+kooriookami@users.noreply.github.com>
2024-04-15 16:29:21 +08:00

36 lines
850 B
Vue

<template>
<el-button plain @click="open">Click to open Message Box</el-button>
</template>
<script lang="ts" setup>
import { ElMessage, ElMessageBox } from 'element-plus'
import type { Action } from 'element-plus'
const open = () => {
ElMessageBox.confirm(
'You have unsaved changes, save and proceed?',
'Confirm',
{
distinguishCancelAndClose: true,
confirmButtonText: 'Save',
cancelButtonText: 'Discard Changes',
}
)
.then(() => {
ElMessage({
type: 'info',
message: 'Changes saved. Proceeding to a new route.',
})
})
.catch((action: Action) => {
ElMessage({
type: 'info',
message:
action === 'cancel'
? 'Changes discarded. Proceeding to a new route.'
: 'Stay in the current route',
})
})
}
</script>