iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >vue中怎么使用svg封装全局消息提示组件
  • 126
分享到

vue中怎么使用svg封装全局消息提示组件

2023-06-30 05:06:19 126人浏览 薄情痞子
摘要

本文小编为大家详细介绍“Vue中怎么使用svg封装全局消息提示组件”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue中怎么使用svg封装全局消息提示组件”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。先看效果图

本文小编为大家详细介绍“Vue中怎么使用svg封装全局消息提示组件”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue中怎么使用svg封装全局消息提示组件”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

先看效果图

vue中怎么使用svg封装全局消息提示组件

vue中怎么使用svg封装全局消息提示组件

一、首先安装下载需要用到的svg相关依赖

npm install svg-sprite-loader --save-dev

二、针对没有vue.config.js文件的vue项目,直接在webpack.base.conf.js中进行如下两个配置

找到图片相关配置位置,添加款选出的代码

vue中怎么使用svg封装全局消息提示组件

在图片配置后添加如下代码

vue中怎么使用svg封装全局消息提示组件

三、根据添加的代码我们去src下创建一个icons文件夹,icons下面创建一个svg文件夹,用于存放svg结尾的图片

vue中怎么使用svg封装全局消息提示组件

index.js文件夹中添加代码

import Vue from 'vue'import SvgIcon from '../components/SvgIcon/SvgIcon'Vue.component('svg-icon', SvgIcon)const req = require.context('./svg', false, /\.svg$/)const requireAll = requireContext => requireContext.keys().map(requireContext)requireAll(req)

四、在components中添加SvgIcon文件夹,并创建组件svgIcon.vue,添加以下代码

<template>    <svg class="svg-icon" aria-hidden="true" v-on="$listeners">        <use :xlink:href="iconName" />    </svg></template><script>    export default {        name: "icon-svg",        props: {            iconClass: {                type: String,                required: true            },            className: {                type: String,                default: ""            }        },        computed: {            iconName() {                return `#icon-${this.iconClass}`;            },            svGClass() {                if (this.className) {                    return "svg-icon " + this.className;                } else {                    return "svg-icon";                }            }        }    };</script><style>    .svg-icon {        width: 30px;        height: 30px;        vertical-align: -0.15em;        fill: currentColor;        overflow: hidden;    }</style>

五、在main.js中引入,src下创建的icons文件夹

vue中怎么使用svg封装全局消息提示组件

六、至此vue中使用svg就完成,接着直接在项目中使用即可

vue中怎么使用svg封装全局消息提示组件

完成了svg的配置 接下来试下全局消息提示

一、在components下创建Message文件夹,文件夹下创建两个文件,一个message.vue,一个index.js

message.vue下添加以下代码

<template>    <transition name="fade">        <div class="message_wrap" :class="type === 'success' ? 'wrap_success' : 'wrap_fail'" v-if="isshow">            <!-- **这里引入前面创建的svg** -->            <svg-icon :icon-class="type === 'success' ? 'success' : 'fail'" ></svg-icon>            <div class="message" :class="type === 'success' ? 'message_success' : 'message_fail'">{{text}}</div>        </div>    </transition></template><script>    export default {        name: 'message',        props: {            type: {                type: String,                default: 'success',            },            text: {                type: String,                default: '',            },            isShow: {                type: Boolean,                default: true,            },        },    };</script><style scoped lang="sCSS">    .message_wrap {        position: fixed;        min-width: 400px;        height: 64px;        top: 6%;        left: 50%;        transfORM: translateX(-50%);        display: flex;        justify-content: flex-start;        align-items: center;        .message {            font-size: 18px;            line-height: 64px;            text-align: center;            margin-left: 16px;        }        .message_success {            color: #4caf50;        }        .message_fail {            color: #ff5252;        }    }    .wrap_success {        background: rgba(234,246,234, .5);    }    .wrap_fail {        background: rgba(255,235,235, .5);    }    .fade-enter-active, .fade-leave-active {        transition: opacity .5s    }    .fade-enter, .fade-leave-active {        opacity: 0    }</style>

index.js中添加以下代码

import vue from 'vue'import Message from './message'const messageConstructor = vue.extend(Message)const MsgMain = {    show(text, type, duration) {        const instance = new messageConstructor()  // 创建实例        instance.$mount(document.createElement('div')) // 创建dom元素        document.body.appendChild(instance.$el) // 将dom元素添加到body中        instance.type = type  // 写入属性        instance.text = text  // 写入属性        instance.isShow = true // 写入属性        setTimeout(() => {            instance.isShow = false  // 一段时候后关闭提示        }, duration)    },    success(text, duration = 2000) {        this.show(text, 'success', duration)  // 成功时调用    },    error(text, duration = 2000) {        this.show(text, 'error', duration) // 失败时调用    },};// 全局注册function Msg() {    vue.prototype.$message = MsgMain}export default Msg

二、在main.js中引入

vue中怎么使用svg封装全局消息提示组件

三、使用:最后在需要用到的地方调用即可

vue中怎么使用svg封装全局消息提示组件

vue中怎么使用svg封装全局消息提示组件

读到这里,这篇“vue中怎么使用svg封装全局消息提示组件”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网精选频道。

--结束END--

本文标题: vue中怎么使用svg封装全局消息提示组件

本文链接: https://www.lsjlt.com/news/327439.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • vue中使用svg封装全局消息提示组件
    本文实例为大家分享了vue中使用svg封装全局消息提示组件的具体代码,供大家参考,具体内容如下 先看效果图 一、首先安装下载需要用到的svg相关依赖 npm install sv...
    99+
    2024-04-02
  • vue中怎么使用svg封装全局消息提示组件
    本文小编为大家详细介绍“vue中怎么使用svg封装全局消息提示组件”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue中怎么使用svg封装全局消息提示组件”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。先看效果图...
    99+
    2023-06-30
  • vue如何实现消息提示全局组件
    这篇文章主要介绍了vue如何实现消息提示全局组件,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。使用vue-cli3.0生成项目toast全局...
    99+
    2024-04-02
  • 怎么用Vue封装全局toast组件
    本篇内容介绍了“怎么用Vue封装全局toast组件”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一. 借助...
    99+
    2024-04-02
  • Vue封装svg-icon组件如何使用
    这篇文章主要介绍“Vue封装svg-icon组件如何使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Vue封装svg-icon组件如何使用”文章能帮助大家解决问题。一、SVG可缩放矢量图形SVG(...
    99+
    2023-07-05
  • Vue封装svg-icon组件使用教程
    目录一、SVG可缩放矢量图形二、SVG在vue项目中的配置与使用一、SVG可缩放矢量图形 SVG(Scalable Vector Graphics)可缩放矢量图形,是一种用于描述基于...
    99+
    2023-02-07
    Vue svg icon组件 Vue svg icon
  • Vue封装全局toast组件的应用
    这篇文章主要介绍“Vue封装全局toast组件的应用”,在日常操作中,相信很多人在Vue封装全局toast组件的应用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Vue封装全局toast组件的应用”的疑惑有所...
    99+
    2023-06-20
  • vue中怎么自定义一个全局消息框组件
    这篇文章将为大家详细讲解有关vue中怎么自定义一个全局消息框组件,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1.发现问题在进行移动端适配的时候,为了在各个...
    99+
    2024-04-02
  • 怎么封装一个vue中也可使用的uniapp全局弹窗组件
    这篇文章主要介绍了怎么封装一个vue中也可使用的uniapp全局弹窗组件的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么封装一个vue中也可使用的uniapp全局弹窗组件文章都会有所收获,下面我们一起来看看吧...
    99+
    2023-07-05
  • vue 为什么要封装全局组件引入
    目录1.为什么要封装全局组件引入2. 封装全局组件的 js3. 在 main.js 中4. 我们要引入这些公共组件就可以直接用啦1.为什么要封装全局组件引入 为何要封装一个封装全局组...
    99+
    2024-04-02
  • Uniapp全局消息提示以及其组件的实现方法
    目录一、前言二、实现1.短轮询请求-App.vue中2.全局消息提示组件(1)定义一个GlobalMessage.vue组件(2)新建GlobalMessage.js(3)main....
    99+
    2024-04-02
  • Vue中怎么封装一个自动化注册全局组件
    这篇文章主要介绍“Vue中怎么封装一个自动化注册全局组件”,在日常操作中,相信很多人在Vue中怎么封装一个自动化注册全局组件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Vue中怎么封装一个自动化注册全局组件...
    99+
    2023-06-25
  • vue全局提示插件开发toast怎么使用
    本篇内容介绍了“vue全局提示插件开发toast怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!插件插件通常用来为 Vue&...
    99+
    2023-07-04
  • vue中全选组件封装的示例分析
    这篇文章将为大家详细讲解有关vue中全选组件封装的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。效果 封装的组件<template>  <el-fo...
    99+
    2023-06-29
  • Vue中如何使用全局组件和局部组件
    Vue中如何使用全局组件和局部组件,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。组件 (Component) 是 Vue.js...
    99+
    2024-04-02
  • 怎么在vue组件中使用全局变量
    在vue组件中使用全局变量的方法:1.新建vue.js项目;2.使用export方法定义全局变量;3.使用Vue.prototype方法挂载全局变量;4.使用this调用全局变量;具体步骤如下:首先,在vue-cli中创建一个vue.js项...
    99+
    2024-04-02
  • vue弹窗消息组件怎么用
    这篇文章主要介绍vue弹窗消息组件怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!本来打算写一个那种提示完了自动消失的弹窗的,但是没有想好淡入淡出的效果。所以暂时算是半成品。练习...
    99+
    2024-04-02
  • 使用纯JavaScript封装一个消息提示条功能示例详解
    目录介绍思路&布局操作逻辑完整代码 介绍 一个类似Element UI、Ant-Design UI等 UI 框架的消息提示功能,方便在任何网页环境中直接调用函数使用;区别在...
    99+
    2023-02-02
    JavaScript封装消息提示条 JavaScript 消息封装
  • VUE中怎么注册全局组件和局部组件
    这篇文章将为大家详细讲解有关VUE中怎么注册全局组件和局部组件,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。全局组件第一步:在components文件夹下建...
    99+
    2024-04-02
  • vue中如何使用svg实现评分显示组件
    这篇文章将为大家详细讲解有关vue中如何使用svg实现评分显示组件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在微信小程序中,有遇到要展示店铺评分,或者是订单完成后对商...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作