prompt.vue 741 B

1234567891011121314151617181920212223242526272829
  1. <template>
  2. <el-button text @click="open">Click to open Message Box</el-button>
  3. </template>
  4. <script lang="ts" setup>
  5. import { ElMessage, ElMessageBox } from 'element-plus'
  6. const open = () => {
  7. ElMessageBox.prompt('Please input your e-mail', 'Tip', {
  8. confirmButtonText: 'OK',
  9. cancelButtonText: 'Cancel',
  10. inputPattern:
  11. /[\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?/,
  12. inputErrorMessage: 'Invalid Email',
  13. })
  14. .then(({ value }) => {
  15. ElMessage({
  16. type: 'success',
  17. message: `Your email is:${value}`,
  18. })
  19. })
  20. .catch(() => {
  21. ElMessage({
  22. type: 'info',
  23. message: 'Input canceled',
  24. })
  25. })
  26. }
  27. </script>