当前位置: 首页 > article >正文

Vue3初学之Element Plus Dialog对话框,Message组件,MessageBox组件

  1. Dialog的使用:
    控制弹窗的显示和隐藏
<template>
  <div>
    <el-button @click="dialogVisible = true">打开弹窗</el-button>
    <el-dialog
      v-model="dialogVisible"
      title="提示"
      width="30%"
      :before-close="handleClose">
      <span>这是一段信息</span>
      <template #footer>
        <span class="dialog-footer">
          <el-button @click="dialogVisible = false">取消</el-button>
          <el-button type="primary" @click="dialogVisible = false">确定</el-button>
        </span>
      </template>
    </el-dialog>
  </div>
</template>

<script setup>
import { ref } from 'vue';

const dialogVisible = ref(false);

const handleClose = (done) => {
  dialogVisible.value = false;
};
</script>

在这里插入图片描述
在这里插入图片描述
增加内容尾部
在这里插入图片描述
在这里插入图片描述
弹窗打开时仍然可以与背景页面交互,可以设置 modal 属性为 false
在这里插入图片描述
2.Message组件
ElMessage 组件可以实现全局消息提示功能

 <template>
  <el-button @click="openSuccess">成功消息</el-button>
  <el-button @click="openWarning">警告消息</el-button>
  <el-button @click="openInfo">普通消息</el-button>
  <el-button @click="openError">错误消息</el-button>
</template>

<script setup>
import { ElMessage } from 'element-plus';
const openSuccess = () => {
  ElMessage.success('这是一条成功消息');
};
const openWarning = () => {
  ElMessage.warning('这是一条警告消息');
};
const openInfo = () => {
  ElMessage('这是一条普通消息');
};
const openError = () => {
  ElMessage.error('这是一条错误消息');
};
</script>

在这里插入图片描述
在这里插入图片描述
通过设置 dangerouslyUseHTMLString 属性为 true,可以将消息内容作为 HTML 片段处理
在这里插入图片描述
全局方法
如果 Element Plus 是全局引入的,ElMessage 会自动挂载到app.config.globalProperties,可以在 Vue 实例中直接使用
在这里插入图片描述
3. MesageBox组件
使用 confirm 显示确认框

<template>
  <el-button @click="openConfirm">打开 Confirm</el-button>
</template>

<script setup>
import { ElMessageBox } from 'element-plus';

const openConfirm = () => {
  ElMessageBox.confirm('此操作将永久删除该文件,是否继续?', '提示', {
    confirmButtonText: '确定',
    cancelButtonText: '取消',
    type: 'warning'
  })
    .then(() => {
      console.log('确认');
    })
    .catch(() => {
      console.log('取消');
    });
};
</script>

在这里插入图片描述
使用 prompt 显示输入框

<template>
  <el-button @click="openPrompt">打开 Prompt</el-button>
</template>

<script setup>
import { ElMessageBox } from 'element-plus';

const openPrompt = () => {
  ElMessageBox.prompt('请输入你的邮箱', '提示', {
    confirmButtonText: '确定',
    cancelButtonText: '取消'
  })
    .then(({ value }) => {
      console.log('用户输入的邮箱:', value);
    })
    .catch(() => {
      console.log('取消输入');
    });
};
</script>

在这里插入图片描述
全局方法
如果 Element Plus 是全局引入的,ElMessageBox 的方法会自动挂载到 app.config.globalProperties,可以在 Vue 实例中直接使用

this.$alert('这是一段内容', '标题');
this.$confirm('此操作将永久删除该文件,是否继续?', '提示');
this.$prompt('请输入你的邮箱', '提示');

http://www.kler.cn/a/511919.html

相关文章:

  • mysql查看binlog日志
  • Ubuntu 22.04.5 修改IP
  • OSI七层协议——分层网络协议
  • RabbitMQ实现延迟消息发送——实战篇
  • 利用Ai,帮我完善了UsbCamera App的几个界面和设置功能
  • 使用 C++ 实现神经网络:从基础到高级优化
  • 社群裂变+2+1链动新纪元:S2B2C小程序如何重塑企业客户管理版图?
  • 微软Win10 RP 19045.5435(KB5050081)预览版发布!
  • Android 11适配全攻略:从理论到实践
  • div水平垂直居中
  • 《链表之美:C语言中的灵活数据结构》
  • PostgreSql 创建稀疏索引
  • Java基础(2)
  • 语言模型的价值定位与技术突破:从信息处理到创新认知
  • 20250120 深入了解 Apache Flink 的 Checkpointing
  • Perplexity AI 周六向 TikTok 母公司字节跳动递交了一项提案
  • Linux:SystemV通信
  • 【2024 年度总结】从小白慢慢成长
  • 数据库高可用方案-04-删除策略
  • MySQL和SQL server的区别
  • DATAGerry 终端节点接口敏感信息泄露漏洞复现(CVE-2024–50967)(附脚本)
  • 基于STM32的智能门锁安防系统(开源)
  • React Context 实现全局组件注册
  • 【2024 CSDN博客之星】技术洞察类:从DeepSeek-V3的成功,看MoE混合专家网络对深度学习算法领域的影响(MoE代码级实战)
  • postgresql的用户、数据库和表
  • 内存原理:计算机存储的核心奥秘