mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/learning-system-portal.git
synced 2025-12-12 04:16:45 +08:00
加弹窗
This commit is contained in:
108
src/components/AlertPopup.vue
Normal file
108
src/components/AlertPopup.vue
Normal file
@@ -0,0 +1,108 @@
|
||||
<template>
|
||||
<!--弹出窗口设置-->
|
||||
<div>
|
||||
<el-dialog :close-on-press-escape="false" :close-on-click-modal="false" class="medalbox" :visible.sync="showGonggao" :append-to-body="true" >
|
||||
<div class="dlg-box" :style="`width:${config.width};height:${config.height}; background: url(${webBaseUrl}/images/gonggao/${config.bgImage}.png) no-repeat;`">
|
||||
<div style="text-align:left;">
|
||||
<div class="dlg-title" v-html="config.title"></div>
|
||||
<div class="dlg-content" v-html="config.content"></div>
|
||||
</div>
|
||||
<div v-if="config.btnText"><a :href="config.pcUrl" :style="{'background-color':config.btnColor}" class="dlg-button">{{config.btnText}}</a> </div>
|
||||
<div v-if="config.author" style="text-align: right;padding-top: 20px;"><span>{{config.author}}</span> </div>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default{
|
||||
props:{
|
||||
config: {
|
||||
type:Object,
|
||||
default(){
|
||||
return{
|
||||
id:'',//数据id
|
||||
closeable:false,//不可以关闭
|
||||
width:'500px',//宽度
|
||||
height:'500px',
|
||||
title:'公告',//标题
|
||||
content:'',//文字内容
|
||||
bgImage:'dlg_bg',//背景图
|
||||
pcUrl:'',//点击后打开的地址,最好是使用相对地址
|
||||
h5Url:'',
|
||||
btnText:'立即参与',//
|
||||
btnColor:'#008BFF',
|
||||
author:'',
|
||||
type:0,//0表不控制,
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
showGonggao:false,
|
||||
sessionKey:'alertpopup',
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
let hasFlag = sessionStorage.getItem(this.sessionKey);
|
||||
if(!hasFlag){
|
||||
let now=new Date();
|
||||
let min=new Date(2022,10,9,0,0,0);
|
||||
let max=new Date(2022,11,1,0,0,0);
|
||||
//console.log(now,min,max);
|
||||
//console.log(now.getTime(),min.getTime(),max.getTime());
|
||||
if(now.getTime()>min.getTime() && now.getTime()<max.getTime()){
|
||||
//console.log('open')
|
||||
this.showGonggao=true;
|
||||
sessionStorage.setItem(this.sessionKey,1);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
.dlg-box{
|
||||
text-align: center;
|
||||
//background: transparent !important;
|
||||
padding:120px 60px 20px 50px;
|
||||
}
|
||||
.dlg-title{
|
||||
color: #333333;
|
||||
font-size: 26px;
|
||||
padding: 30px 0px;
|
||||
text-align: center;
|
||||
font-weight: 600;
|
||||
}
|
||||
.dlg-content{
|
||||
color: #333333;font-size: 18px;height: 150px;
|
||||
}
|
||||
.dlg-button{
|
||||
border-radius: 22px;
|
||||
display: inline-block;
|
||||
font-size: 18px;
|
||||
padding: 10px;
|
||||
width: 300px;
|
||||
height: 46px;
|
||||
text-align: center;
|
||||
color: #fff;
|
||||
|
||||
}
|
||||
.medalbox {
|
||||
|
||||
::v-deep .el-dialog{
|
||||
background: transparent !important;
|
||||
box-shadow:none !important;
|
||||
.el-dialog__header{
|
||||
display: none !important;
|
||||
}
|
||||
.el-dialog__body{
|
||||
// width: 320px !important;
|
||||
// height: 420px !important;
|
||||
background: transparent !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user