码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Vue3中全局组件的使用


    一、创建组件

    在components中新建CusMessage.vue

    1. <script>
    2. import { ElMessage } from 'element-plus'
    3. export default {
    4. name: "CurMessage",
    5. data(){
    6. return{
    7. isShow:false,
    8. msg:"发送请求成功",
    9. type:'success'
    10. }
    11. },
    12. watch:{
    13. isShow(newVal){
    14. if(newVal){
    15. ElMessage({
    16. message:this.msg,
    17. type:this.type
    18. })
    19. }
    20. }
    21. }
    22. }
    23. script>
    24. <style scoped>
    25. style>

    二、创建公共插件js

    在src目录下,新建plugin文件夹,然后创建message.js,

    在vue3中挂载方式改为

    app.config.globalProperties
    1. import CurMessage from "@/components/CusMessage";
    2. import {createApp} from 'vue'
    3. const message = {}
    4. //声明变量存放构造器
    5. let $vm
    6. message.install = function (app) {
    7. if(!$vm){
    8. // 1、实例化并绑定组件
    9. const Message = createApp(CurMessage);
    10. $vm = Message.mount(document.createElement("div"));
    11. document.body.appendChild($vm.$el)
    12. }
    13. $vm.isShow = false;
    14. let message = {
    15. show(msg,type="success"){
    16. $vm.isShow = true;
    17. $vm.msg = msg;
    18. $vm.type = type;
    19. setTimeout(() => {
    20. this.hide()
    21. },1000)
    22. },
    23. hide(){
    24. $vm.isShow = false;
    25. }
    26. }
    27. if(!app.message){
    28. app.$message = message
    29. }
    30. app.config.globalProperties.$message = app.$message;
    31. }
    32. export default message;

    三、全局挂载

    在你的main.js入口文件中挂载,

    四、在vue中调用

     1、引入

    1. import { ref, watch, reactive, getCurrentInstance } from 'vue'
    2. export default{
    3. setup(props,{emit}){
    4. const { proxy } = getCurrentInstance()
    5. proxy.$message.show('操作成功!')
    6. }
    7. }

  • 相关阅读:
    初识 Spring 框架
    计算机毕设(附源码)JAVA-SSM家用电器电商网站设计
    Day2:写前端项目(html+css+js)
    从0到1 手把手搭建spring cloud alibaba 微服务大型应用框架(十一)spring-boot-admin 监控篇(1) 原理与介绍
    手写嵌入式操作系统(基于stm8单片机)
    如何写好新闻稿,新闻稿怎么撰写?
    大数据(9f)Flink双流JOIN
    mmrotate学习(4):mmrotate框架训练数据集
    计算机毕业设计之java+javaweb的人体健康信息管理系统
    软件测试之编写用例的重要性
  • 原文地址:https://blog.csdn.net/qq_40011214/article/details/126700560
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号