element-plus/packages/message/doc/manual_close.vue
Bruno Santos e900aac6ea
Feat/message (#291)
* feat(message): add message component

- [WIP] Messages component
- TODOs: tests, VNode Bug

re #101

* test(message): add tests for message component

* fix(message): fix message z-index

Co-authored-by: Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>
2020-10-03 20:55:23 +08:00

41 lines
860 B
Vue

<template>
<div>
<el-button class="item" @click="handleOpen">Show Message</el-button>
<el-button class="item" @click="handleClose">Close Message</el-button>
</div>
</template>
<script lang="ts">
import Message from '../src/message'
import type { IMessageHandle } from '../src/types'
import { ref } from 'vue'
export default {
setup() {
const messageBanner = ref<IMessageHandle>(null)
// methods
const handleOpen = () => {
if (messageBanner.value) return
messageBanner.value = Message({
message: "This won't close automatically",
duration: 0,
})
}
const handleClose = () => {
if (messageBanner.value) {
messageBanner.value.close()
messageBanner.value = null
}
}
return {
messageBanner,
handleOpen,
handleClose,
}
},
}
</script>