Vue实现通知或详情类弹窗
作者:theMuseCatcher 发布时间:2024-05-29 22:45:06
标签:vue,弹窗
本文实例为大家分享了Vue实现通知或详情类弹窗的具体代码,供大家参考,具体内容如下
效果如图所示:(整体样式模仿ant-design-vue Modal样式,同时阴影覆盖浏览器窗口,并自定义滚动条样式)
①创建弹窗组件Dialog.vue:
<template>
<div class="m-dialog-mask">
<div class="m-modal">
<div class="m-modal-content">
<div @click="onClose" class="u-close">✖</div>
<div class="m-modal-header">
<div class="u-head">{{ title }}</div>
</div>
<div class="m-modal-body">
<p class="u-content" v-html="content"></p>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
name: 'Dialog',
props: {
title: {
type: String,
default: '提示'
},
content: {
type: String,
default: ''
}
},
methods: {
onClose () {
this.$emit('close')
}
}
}
</script>
<style lang="less>
.m-dialog-mask {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1000000;
background: rgba(0,0,0,0.45);
.m-modal {
width: 720px;
position: relative;
top: calc(50% - 240px);
margin: 0 auto;
.m-modal-content {
position: relative;
background: #fff;
border-radius: 4px;
box-shadow: 0 4px 12px rgba(0,0,0,.1);
.u-close {
position: absolute;
top: 16px;
right: 24px;
color: rgba(0,0,0,.45);
font-size: 18px;
line-height: 22px;
cursor: pointer;
transition: color .3s;
&:hover {
color: rgba(0,0,0,.75);
}
}
.m-modal-header {
height: 22px;
padding: 16px 24px;
border-radius: 4px 4px 0 0;
border-bottom: 1px solid #e8e8e8;
.u-head {
margin: 0;
color: rgba(0,0,0,.85);
font-weight: 500;
font-size: 16px;
line-height: 22px;
word-wrap: break-word;
}
}
.m-modal-body {
height: 425px;
padding: 24px;
font-size: 16px;
line-height: 1.5;
word-wrap: break-word;
box-sizing: border-box;
overflow: auto;
.u-content {
width: 672px;
img { max-width: 100%; } // v-html中图片过大时,设置其样式最大宽度为100%
}
}
/* 自定义滚动条样式 */
.m-modal-body::-webkit-scrollbar {
width: 10px; /*对垂直流动条有效*/
height: 10px; /*对水平流动条有效*/
}
/*定义滚动条的圆角、内阴影及轨道样式*/
.m-modal-body::-webkit-scrollbar-track {
border-radius: 5px;
box-shadow: inset 0 0 6px rgba(0,0,0,.3);
background: #fff;
}
/* 滚动条上部轨道样式 */
.m-modal-body::-webkit-scrollbar-track-piece:vertical:start {
border-radius: 5px;
background: #c3c3c3;
}
/*定义圆角、内阴影及滑块样式*/
.m-modal-body::-webkit-scrollbar-thumb {
border-radius: 5px;
box-shadow: inset 0 0 6px rgba(0,0,0,.3);
background: #e8e8e8;
&:hover { // 悬浮或选中时滑块样式
background: #c9c9c9;
}
}
}
}
}
</style>
②使用Dialog组件进行通知,详情类的展示:
<Dialog
title="提示"
:content="content"
@close="onClose"
v-show="showDialog"
/>
import Dialog from '@/components/Dialog'
components: {
Dialog
}
data () {
return {
showDialog: false,
content: '',
}
}
methods: {
onDialog (content) { // 调用Dialog弹窗展示
this.content = content
this.showDialog = true
},
onClose () { // 关闭dialog
this.showDialog = false
}
}
来源:https://blog.csdn.net/Dandrose/article/details/118969366


猜你喜欢
- 如下所示:#!/usr/bin/env python3.5import psutilimport mysql.connectorimport
- 首先我们放出tf2.0关于tf.keras.layers.Conv2D()函数的官方文档,然后逐一对每个参数的含义和用法进行解释:tf.ke
- 大型网站为了软解大量的并发访问,除了在网站实现分布式负载均衡,远远不够。到了数据业务层、数据访问层,如果还是传统的数据结构,或者只是单单靠一
- 很开心可以和导师阿坚在08gui大赛中一起去完成《fight》的图标设计,在这个过程中真的是受益匪浅!这里我谈一下在这个过程的一些小小心得。
- 在Python的学习过程中,肯定会遇到很多安装模块的地方,可以使用easy_install安装,但是easy_install相对于pip而言
- 1。在Asp页面首部<head>加入 Response.Buffer =
- 本文实例讲述了python中metaclass原理与用法。分享给大家供大家参考,具体如下:什么是 metaclass.metaclass (
- 发现问题在使用pip install下载其他包时,报了错,如图:提示:“You are using pip versio
- 首先交代一下运行环境和工具版本:WIN10MINGW64ORACLEINSTANCCLIENT_18_3 x64Jetbrins Golan
- 使用tensorflow过程中,训练结束后我们需要用到模型文件。有时候,我们可能也需要用到别人训练好的模型,并在这个基础上再次训练。这时候我
- 今天好友问我怎么从阿里云服务器上把文件下载下来。我一听之下觉得办法很多啊,随意搭个服务器,然后把文件一丢就可以下载了;弄个FTP也行;直接用
- 一、常用按键按键说明Keys.BACK_SPACE回退键(BackSpace)Keys.TAB制表键(Tab)Keys.ENTER回车键(E
- 学习计划很容易就被打断,坚持也不容易。最近公司里开会,要调整业务方向,建议学习NodeJS。NodeJS之前我就会一点,但是没有深入研究。N
- 下载python3.6.5安装包1. 上传安装包。打开终端,利用命令cd 进入文件所在文件夹里python@ubun
- 起步在 《分布式任务队列Celery使用说明》 中介绍了在 Python 中使用 Celery 来实验异步任务和定时任务功能。本文介绍如何在
- 1、残差连接是目前常用的组件,解决了大规模深度学习模型梯度消失和瓶颈问题。通常,在10层以上的模型中追加残差连接可能有帮助。from ker
- 第1章 ansible软件概念说明python语言是运维人员必会的语言,而ansible是一个基于Python开发的自动化运维工具 (sal
- 之前写了一个matlab的,越用越觉得麻烦,如果不同数据集要改类别数目,而且运行速度慢。所以重新写了一个Python的,直接读取xml文件夹
- 如下所示:#保存 cookie 到变量import urllib.requestimport http.cookiejarcookie =
- 锁机制NOLOCK和READPAST的区别。1. 开启一个事务执行插