提交弹出窗口配置

This commit is contained in:
daihh
2022-12-23 13:28:47 +08:00
parent 59beeb398c
commit c12a58558d
3 changed files with 41 additions and 65 deletions

View File

@@ -1,10 +1,13 @@
import ajax from '@/utils/xajax.js'
const userList=function (){
return ajax.get('/xboe/m/popup/user');
/**
* @param {Object} device 不包含的平台, 1表pc, 2表移动端
*/
const findByNoDevice=function (device){
return ajax.get('/xboe/m/popup/user?device='+device);
}
export default {
userList
findByNoDevice
}

View File

@@ -1,17 +1,15 @@
<template>
<!--弹出窗口设置-->
<div>
<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;`">
<span class="dlg-close" @click="showGonggao = false"><i style="font-size: 28px;color: #999;" class="el-icon-close"></i></span>
<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" @click="showGonggao = false" target="_blank" :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 v-for="pop in popupList" :key="pop.id">wwww
<el-dialog :close-on-press-escape="false" :close-on-click-modal="false" class="medalbox" :visible.sync="pop.show" :append-to-body="true" >
<div style="text-align: center;">
<el-image :src="baseUrl+pop.bgImage"></el-image>
<div>
<span v-if="pop.closeable" class="dlg-close" @click="pop.show = false"><i style="font-size: 28px;color: #999;" class="el-icon-close"></i></span>
</div>
</div>
</el-dialog>
</div>
</div>
@@ -20,30 +18,15 @@
import apiPopup from '@/api/modules/popup.js';
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表不控制
}
}
},
page: {
type:String,
default:''
}
},
data() {
return {
showGonggao:false,
showGonggao:true,
baseUrl:process.env.VUE_APP_FILE_BASE_URL,
popupList:[],//需要弹出的窗口
sessionKey:'alertpopup',
};
@@ -51,22 +34,26 @@
mounted() {
//获取用户需要弱出的窗口信息,放在状态中
let has = sessionStorage.getItem(this.sessionKey);
//has=false;
if(!has){
apiPopup.userList().then(rs=>{
apiPopup.findByNoDevice(2).then(rs=>{
if(rs.status==200){
rs.result.forEach(item=>{
item.show=true;
})
this.popupList=rs.result;
if(rs.result.length>0){
sessionStorage.setItem(this.sessionKey,JSON.stringify(rs.result));
sessionStorage.setItem(this.sessionKey,"1");
this.countPopup();
}else{
sessionStorage.setItem(this.sessionKey,'[]');
sessionStorage.removeItem(this.sessionKey);
}
}
});
}else{
this.popupList=JSON.parse(has);
this.countPopup();
//this.popupList=JSON.parse(has);
//this.countPopup();
}
@@ -97,13 +84,12 @@
},
methods:{
countPopup(){
let newLogin = localStorage.getItem(this.$xpage.constants.newLoginKey);
this.popupList.forEach(item=>{
if(item.loginEd && newLogin && newLogin==1){
}
})
// let newLogin = localStorage.getItem(this.$xpage.constants.newLoginKey);
// this.popupList.forEach(item=>{
// if(item.loginEd && newLogin && newLogin==1){
// }
// })
}
}
}
@@ -139,8 +125,11 @@
}
.dlg-close{
float: right;
margin-top: -90px;
//float: right;
//margin-top: -90px;
border: 1px solid #cccccc;
border-radius: 50%;
padding: 20px 10px 10px 10px;
cursor: pointer;
}
.medalbox {

View File

@@ -124,7 +124,7 @@
</div>
</div>
</div>
<popup v-if="popupConfig.id" :config="popupConfig"></popup>
<popup></popup>
</div>
</template>
<script>
@@ -184,23 +184,7 @@ export default {
//this.loadPopupConfig();
},
methods: {
loadPopupConfig(){
this.popupConfig={
id:'123',//数据id
closeable:false,//不可以关闭
width:'472px',//宽度
height:'500px',
title:'用户体验调研',//标题
content:'<div style="font-size:20px;font-weight: 600;padding-bottom:10px;">亲爱的校友:</div><div> 诚邀您对11月4日上线的学习平台V2.0的使用体验进行测评,我们将以您的意见反馈为输入,不断的优化和改进。</div>',//文字内容
bgImage:'dlg_bg_pen',//背景图
pcUrl:'https://boehrsurvey.wjx.cn/vm/O5XcWrk.aspx',//点击后打开的地址,最好是使用相对地址
h5Url:'',
btnText:'立即参与',//
btnColor:'#008BFF',
author:'BOEU学习平台产品团队',
type:0,//0表不控制
}
},
setCurIdentity(iden){
this.$store.dispatch('SetCurIdentity',iden);
},