Commit 04df1766 authored by liwei's avatar liwei

修改了活动页面

parent fe1bf400
...@@ -58,13 +58,10 @@ ...@@ -58,13 +58,10 @@
"path" : "pages/tab/activity", "path" : "pages/tab/activity",
"style" : "style" :
{ {
"navigationStyle": "custom", "navigationBarTitleText": "活动",
"backgroundColor": "#F4F5F9", "backgroundColor": "#F4F5F9",
"backgroundColorTop": "#F4F5F9", "backgroundColorTop": "#F4F5F9",
"backgroundColorBottom": "#F4F5F9", "backgroundColorBottom": "#F4F5F9"
"enablePullDownRefresh": false,
"onReachBottomDistance": 50,
"disableScroll": true
} }
} }
], ],
...@@ -343,7 +340,8 @@ ...@@ -343,7 +340,8 @@
"selectedColor": "#333333", "selectedColor": "#333333",
"borderStyle": "black", "borderStyle": "black",
"backgroundColor": "#ffffff", "backgroundColor": "#ffffff",
"list": [{ "list": [
{
"pagePath": "pages/tab/index", "pagePath": "pages/tab/index",
"iconPath": "static/tab/ld.png", "iconPath": "static/tab/ld.png",
"selectedIconPath": "static/tab/lds.png", "selectedIconPath": "static/tab/lds.png",
......
<template> <template>
<view class=""> <view>
<view class="home-page-container" style="height: 100vh;" v-if="nologin==true" @touchmove.stop.prevent="() => {}"> <view class="pageanima">
<image class="nologi-bgc-imga" src="../../static/images/bg-c.png" mode="aspectFill"></image> <view class="div" style="height: 100%;background: #F4F5F9;">
<u-navbar class="myNav" :placeholder="true"> <!-- 轮播图 后面放banner里的图-->
<view class="u-nav-slot" slot="left"> <view class="box">
<view class="text">活动</view> <view class="swiper">
<ls-swiper :list="userData.imgList" imgKey="" :loop="true" :dots="true" :autoplay="true"
:height="200" />
</view> </view>
</u-navbar>
<view class="nologi-noimg">
<image src="../../static/images/nologin.png" style="width: 100%;height: 100%;" mode="aspectFill"></image>
</view>
<view class="nologi-text"> 登录后才能查看消息哦 </view>
<view class="nologi-nobutton" @click="getUserInfo"> 点此登录 </view>
</view> </view>
<view v-if="nologin==false"> <!-- 活动列表-->
<view class="box" v-if="!isShow"> <view class="card" v-for="(item,index) in businessList" :key="index" @click="gotodetail(item)">
<u-navbar :bgColor="bgColor" :placeholder="true"> <view class="contentBody">
<view class="u-nav-slot" slot="left"> <view class="leftlist">
<view class="text">消息</view> <image src="/static/images/home/gonggao.png" class="leftlistimage"/>
</view> </view>
</u-navbar> <view class="rightlist">
<view class="msgs"> <view class="rightlist-title">{{item.name}}</view>
<u-swipe-action :autoClose="true" :key="key"> <view class="rightlist-time">
<u-swipe-action-item :show="isOpened" :auto-close="false" :options="option" v-for="(i,index) in list" :key="i.sendUserId" <view class="timeicon">
@click="delClick"> <u-icon name="clock" color="#666666;" size="15"></u-icon>
<view class="item" @click="actionClick(i)">
<image class="ava" :src="i.headPortrait" mode="aspectFill"></image>
<u-badge customStyle="margin-left:11%;margin-bottom: 10%;" style="margin-bottom: ;" v-if="i.unreadCount!==null" max="99" :value="i.unreadCount" :absolute="true">
</u-badge>
<!-- <view class="ava" :style="{backgroundImage: 'url(' + i.headPortrait + ')'}">
<u-badge v-if="i.unreadCount!==null" max="99" :value="i.unreadCount" :absolute="true">
</u-badge>
</view> -->
<view class="r">
<view class="title">
<text class="name">{{i.nickName}}</text>
<text class="time">{{i.latelyTime.slice(10,16)}}</text>
</view> </view>
<view class="msg"> <view class="timetext">{{item.createTime}}</view>
<view v-if="i.messageDescribeFormat=='text'">
<rich-text :nodes="i.messageDescribe"></rich-text>
</view> </view>
<view v-if="i.messageDescribeFormat=='emoji'"> <view class="rightlist-address">
[动画表情] <view class="addressicon">
<u-icon name="map" color="#D84848;" size="15"></u-icon>
</view> </view>
<!-- 图片消息 --> <view class="addresstext" v-if="item.address">{{item.address}}</view>
<view v-if="i.messageDescribeFormat=='image'"> <view class="addresstext" v-else>-</view>
[图片]
</view> </view>
</view> </view>
</view>
</view> </view>
</u-swipe-action-item>
</u-swipe-action>
</view> </view>
<view class="bussiness-nomore">~ 没有更多啦 ~</view>
</view> </view>
<template v-if="isShow"> <!-- <login @change="getUserInfo" :isLoginPop="isLoginPop" class="my-select"></login>-->
<u-navbar bgColor="#fff" :placeholder="true">
<view class="u-nav-slot" slot="left">
<view class="text">消息</view>
</view>
</u-navbar>
<empty height="calc(100vh - 100px)" />
</template>
</view> </view>
<ELM ref="elm" :msg="tipMsg" :isConfirm="isConfirm" @confirm="confirm"></ELM>
</view> </view>
</template> </template>
<script> <script>
import ELM from '@/components/elm-toast/index.vue'; let util = require('@/util/means.js');
import empty from '@/components/empty.vue' import LsSwiper from '../../components/ls-swiper/index.vue';
import { export default {
WS
} from '@/util/wsConfig.js'
export default {
components: { components: {
empty, LsSwiper
ELM
}, },
data() { data() {
return { return {
key:1, businessList: [
bgColor: '#F4F5F9', {
option: [{ name:'测试1',
text: '删除', createTime:'2024-10-12',
style: { address:'天津'
backgroundColor: '#FF8080'
}
}],
list:[],
total: 0,
params: {
pageIndex: 1,
pageSize: 10
}, },
count: 0, {
isShow: false, name:'测试2',
ownerId: null, createTime:'2024-10-12',
timeoutObj: null, address:'天津'
reConnect: true,
socketTask: null,
nologin: '',
tipMsg: '',
isConfirm: false
}
}, },
onShow() { {
if (uni.getStorageSync('info')) { name:'测试3',
this.nologin = false createTime:'2024-10-12',
this.ownerId = uni.getStorageSync('info') != null ? uni.getStorageSync('info').id : null; address:'天津'
this.getMsgList(true);
this.connectSocketInit();
} else {
this.nologin = true
}
}, },
// 关闭websocket【必须在实例销毁之前关闭,否则会是underfined错误】 {
onHide () { name:'测试4',
this.reConnect=true; createTime:'2024-10-12',
this.closeSocket(); address:'天津'
clearInterval(this.timeoutObj); //销毁定时器
}, },
onReachBottom() { {
let { name:'测试5',
pageIndex, createTime:'2024-10-12',
pageSize address:'天津'
} = this.params
if (pageIndex * pageSize < this.total) {
this.params.pageIndex += 1;
this.getMsgList()
}
}, },
methods: { {
async getUnRead() { name:'测试6',
const res = await this.$myRequest({ createTime:'2024-10-12',
url: `/message/un/read`, address:'天津'
withToken: true,
method: 'GET'
});
this.count = res.data.data
uni.setTabBarBadge({ //显示数字
index: 1, //tabbar下标
text: `${res.data.data}` //数字
})
}, },
delClick({ {
index, name:'测试6',
name createTime:'2024-10-12',
}) { address:'天津'
console.log(1111);
console.log(index);
this.$myRequest({
url: `/message/list/delete/${this.list[index].sendUserId}`,
withToken: true,
method: 'DELETE'
}).then(res => {
this.referesh()
this.status = 'close';
})
}, },
actionClick(i) { {
this.tipMsg = "开源版暂未开放,敬请期待!如需旗舰版,可联系作者微信(MMRWXM)咨询"; name:'测试6',
this.$refs.elm.showDialog(); createTime:'2024-10-12',
address:'天津'
}, },
async getMsgList(isReload) {
let page= this.params;
if(isReload){
page.pageIndex=1;
if(this.list!=null&&this.list.length>page.pageSize)
{ {
page.pageSize=this.list.length; name:'测试6',
} createTime:'2024-10-12',
address:'天津'
} }
const res = await this.$myRequest({ ] ,// 商家列表
url: `/message/list`, notice:'这里是公告这里是公告这里是公告这里是公告这里是公告这里是公告这里是公告这里是公告',
withToken: true, showBtn: true,
data: page, showArrowDown: true,
method: 'GET' showTabbar: true,
}); scrollTop: 0,
if (isReload) { isLoginPop: false,
this.list = res.data.data.rows; userData: {
} else { userArticleViewResponse: {
this.list = this.list.concat( articleContent: null,
res.data.data.rows articleImg: []
);
} }
this.total = res.data.data.totalCount
if (this.total <= 0) {
this.isShow = true
} else {
this.isShow = false
}
this.key+=1
this.$nextTick(()=>{
this.$forceUpdate()
})
this.getUnRead();
}, },
connectSocketInit: function() { data: [],
let self = this; count: 0,
if (self.reConnect) {
console.log("连接socket");
self.socketTask = uni.connectSocket({
url: WS,
success(data) {
console.log("连接socket成功");
},
fail(data) {
console.log("连接socket失败");
}
});
uni.onSocketOpen(function(res) {
//监听WebSocket连接打开事件
let msgData = {
messageType: "CONNECT",
info: self.ownerId
}; };
console.log("发送连接请求");
self.websocketSendMessage(msgData);
});
}
}, },
// 关闭websocket【离开这个页面的时候执行关闭】 onHide() {
closeSocket() {
let self = this;
uni.closeSocket({
success(res) {
console.log("关闭成功", res);
},
fail(err) {
console.log("关闭失败", err);
},
});
}, },
websocketSendMessage(msgData) { onShow() {
let self = this; this.getRecUserInfo();
uni.sendSocketMessage({
data: JSON.stringify(msgData),
success() {
if (msgData.messageType == 'CONNECT') {
console.log("建立连接成功 启动监听" + JSON.stringify(msgData));
self.websocketOnMessage();
} else {
console.log("消息发送成功" + JSON.stringify(msgData));
}
}, },
fail() { onPageScroll(e) {
console.log("发送失败,重新建立连接" + JSON.stringify(msgData)); if (!this.isInit) {
setTimeout(() => { return;
self.websocketSendMessage(msgData);
}, 1000)
} }
}); const _this = this;
}, if (e.scrollTop <= 0) {
websocketOnMessage() { this.showArrowDown = true;
let self = this; return;
uni.onSocketMessage((res) => { }
console.log("监听到socket信息:", res); this.showArrowDown = false;
if ("CONNECT_SUCCESS" == res.data) { if (this.scrollTop - e.scrollTop > 50) {
//建立连接成功后开始心跳 this.bottom_offset = false;
this.reset(); // 检测心跳reset,防止长时间连接导致连接关闭 }
} else { if (this.bottom_offset) {
return;
//收到消息 }
let msgData = JSON.parse(res.data); if (!_this.flag) {
console.log("收到消息:", JSON.stringify(msgData)); setTimeout(() => {
//消息应答 if (e.scrollTop > _this.scrollTop&&_this.showTabbar) {
this.answerMessage(msgData.msgNo); uni.hideTabBar({
this.referesh(); animation: true,
success() {
_this.showTabbar = false;
} }
}); });
}, } else if (e.scrollTop < _this.scrollTop&&!_this.showTabbar) {
// 启动心跳 start uni.showTabBar({
start() { animation: true,
let self = this;
self.timeoutObj = setInterval(function() {
uni.sendSocketMessage({
data: '{"messageType":"ALIVE"}',
success() { success() {
console.log("消息列表心跳"); _this.showTabbar = true;
self.reConnect = false;
},
fail() {
console.log("心跳失败重新连接");
setTimeout(() => {
self.reConnect = true;
self.connectSocketInit();
}, 1000)
} }
}); });
}, 1000); }
}, _this.scrollTop = e.scrollTop;
// 检测心跳reset _this.flag = false;
reset() { }, 200);
clearInterval(this.timeoutObj); }
this.start(); // 启动心跳 _this.flag = true;
}, },
referesh() { methods: {
// 刷新消息列表 // 页面跳转
gotopage(url) {
this.getMsgList(true); uni.reLaunch({
url: url
});
}, },
answerMessage(MsgNo) { //热门推荐 跳转
let self = this; gotodetail(item){
uni.sendSocketMessage({ uni.navigateTo({
data: '{"messageType":"ANSWER","info":"' + MsgNo + '"}', url: '/pages2/business/business/id='+item.businessId
success() { })
console.log("消息应答:" + MsgNo);
}, },
fail() { async getUnRead() {
console.log("消息应答失败"); const res = await this.$myRequest({
} url: `/message/un/read`,
withToken: true,
method: 'GET'
}); });
this.count = res.data.data
uni.setTabBarBadge({ //显示数字
index: 1, //tabbar下标
text: `${res.data.data}` //数字
})
}, },
//登录 getUserInfo(e) {
getUserInfo() { if (e == 0) {
this.isLoginPop = false;
return;
}
// #ifdef MP-WEIXIN // #ifdef MP-WEIXIN
try { try {
wx.getUserProfile({ wx.getUserProfile({
desc: '用于完善会员资料', desc: '用于完善会员资料',
success: (resinfo) => { success: resinfo => {
wx.login({ wx.login({
success: (res) => { success: res => {
if (res.code) { if (res.code) {
console.log(res.code, resinfo); console.log(res.code, resinfo);
this.setCode(res.code, resinfo); this.setCode(res.code, resinfo);
} else {} } else {}
}, },
fail: (err) => {} fail: err => {
})
}
});
}, },
fail: (errinfo) => { fail: errinfo => {
this.setCode(this.generateRandomString(10), 'null'); this.setCode(this.generateRandomString(10), 'null');
} }
}) });
} catch { } catch {
wx.getUserInfo({ wx.getUserInfo({
success: (resinfo) => { success: resinfo => {
wx.login({ wx.login({
success: (res) => { success: res => {
if (res.code) { if (res.code) {
console.log(res.code, resinfo); console.log(res.code, resinfo);
this.setCode(res.code, resinfo); this.setCode(res.code, resinfo);
} else {} } else {}
}, },
fail: (err) => {} fail: err => {}
}) });
}, },
fail: (errinfo) => {} fail: errinfo => {}
}) });
} }
// #endif // #endif
// #ifndef MP-WEIXIN // #ifndef MP-WEIXIN
this.setCode("ip", 'null'); this.setCode("ip", 'null');
// #endif // #endif
}, },
async setCode(code, resinfo) { getRecUserInfo() {
console.log("开始获取用户信息")
// 获取推荐用户信息
let age = 20;
if (this.age) {
age = util.mymethod(uni.getStorageSync('itemobj').birthday);
}
let loginType;
uni.getStorageSync('token') ? (loginType = true) : (loginType = false);
console.log(code) this.$myRequest({
const res = await this.$myRequest({ url: 'nostalgia/fruser/recommendUserInfo',
url: 'token/wxAppletLogin', withToken: loginType,
data: { data: {
code: code age,
gender: this.gender == undefined ? "FEMALE" : this.gender
}, },
method: 'POST', method: 'GET'
}); }).then(res => {
console.log(res, 'delshoucang'); console.log("获取用户信息完成")
var obj = {
code: code,
state: res.data.code,
nickName: resinfo!='null'?resinfo.userInfo.nickName:"匿名用户"
}
uni.setStorageSync('verification', obj);
if (res.data.code == 200) { if (res.data.code == 200) {
this.tipMsg = "登录成功"; if (res.data.data == null) {
this.$refs.elm.showDialog(); this.showArrowDown = false;
this.isInit = false;
var info = { // this.data = [];
birthday: res.data.data.info.birthday, this.userData = {};
city: res.data.data.info.city, this.nextData = {};
gender: res.data.data.info.gender, uni.setTabBarBadge({
headPortrait: res.data.data.info.headPortrait, index: 0,
id: res.data.data.info.id, text: '0'
nickName: res.data.data.info.nickName, });
} } else {
uni.setStorageSync('info', info); this.showArrowDown = true;
uni.setStorageSync('token', res.data.data.token); this.isInit = true;
this.ownerId = res.data.data.info.id; this.userData = res.data.data;
this.getMsgList(true); if(this.userData.userArticleViewResponse.articleImg.length>3){
this.connectSocketInit(); this.userData.userArticleViewResponse.articleImg = this.userData.userArticleViewResponse.articleImg.splice(0,3)
} else if (res.data.code == 11002) { }
uni.setTabBarBadge({
index: 0,
text: `${res.data.data.surplusNum}`
});
uni.reLaunch({ this.showBtn = true;
url: "/pagesintroduction/selfIntroduction?code=" + code console.log(
}) `console.log("获取用户信息完成") 用户id${res.data.data.id}****剩余次数${res.data.data.surplusNum}`
);
}
} else { } else {
this.tipMsg = res.data.msg;
this.$refs.elm.showDialog(); this.$refs.elm.showDialog();
} }
})
}, },
generateRandomString(length) { generateRandomString(length) {
let result = uni.getStorageSync('touristopenid'); let result = uni.getStorageSync('touristopenid');
...@@ -436,178 +309,423 @@ ...@@ -436,178 +309,423 @@
uni.setStorageSync('touristopenid', result); uni.setStorageSync('touristopenid', result);
return result; return result;
} }
} },
} };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
view { .bussiness-nomore{
box-sizing: border-box; text-align: center;
padding: 42rpx 0;
font-size: 13px;
font-family: Source Han Sans CN-Regular, Source Han Sans CN;
font-weight: 400;
color: #B9B9B9;
}
@keyframes leftMove {
0% {
left: -130rpx;
}
100% {
left: 0;
}
}
@keyframes rightMove {
0% {
right: -130rpx;
}
100% {
right: 0;
} }
}
.u-nav-slot {
@keyframes topHide {
0% {
top: 50%;
width: 0;
height: 0;
}
70% {
top: 18%;
width: 100rpx;
height: 100rpx;
}
80% {
top: 18%;
width: 100rpx;
height: 100rpx;
}
90% {
top: 20%;
width: 80rpx;
height: 80rpx;
}
100% {
top: 20%;
wixdth: 0;
height: 0;
}
}
page {
width: 100%;
height: 100vh;
}
.card {
background-color: white;
width: 680rpx;
height: 250rpx;
margin: 34rpx 34rpx 0 34rpx;
border-radius: 12rpx 12rpx 12rpx 12rpx;
.contentBody{
margin-left: 40rpx;
padding-top: 30rpx;
display: flex;
.leftlist {
margin-right: 26rpx;
.leftlistimage {
width: 220rpx;
height: 166rpx;
border-radius: 12px 12px 12px 12px;
}
}
.rightlist {
.rightlist-title {
margin-top: 12rpx;
margin-left: 17rpx;
font-size: 16px;
font-family: Source Han Sans CN-Medium, Source Han Sans CN;
font-weight: 500;
color: #222222;
margin-bottom: 12rpx;
}
.rightlist-message {
font-size: 14px;
font-family: Source Han Sans CN-Regular, Source Han Sans CN;
font-weight: 400;
color: #666666;
margin-bottom: 26rpx;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
width: calc(100vw - 220rpx - 26rpx - 42rpx - 34rpx);
}
.rightlist-time {
margin-top: 12rpx;
display: flex; display: flex;
margin-bottom: 24rpx;
align-items: center; align-items: center;
.text { .timeicon {
height: 44rpx; margin-right: 14rpx;
text-align: center;
font-size: 32rpx;
font-family: PingFang SC-Bold, PingFang SC;
font-weight: bold;
color: #000000;
margin-left: 315rpx;
line-height: 44rpx;
}
} }
.box { .timetext {
padding: 0 32rpx; font-size: 14px;
min-height: 100vh; font-family: Source Han Sans CN-Regular, Source Han Sans CN;
background-color: #F4F5F9; font-weight: 400;
color: #666666;
}
}
.u-nav-slot { .rightlist-address {
display: flex; display: flex;
margin-bottom: 30rpx;
align-items: center; align-items: center;
.text { .addressicon {
height: 44rpx; margin-right: 14rpx;
text-align: center; margin-top: 2rpx;
font-size: 32rpx; }
font-family: PingFang SC-Bold, PingFang SC;
font-weight: bold; .addresstext {
color: #000000; font-size: 14px;
margin-left: 315rpx; font-family: Source Han Sans CN-Regular, Source Han Sans CN;
line-height: 44rpx; font-weight: 400;
color: #DF6969;
}
}
} }
} }
.msgs { .content {
/deep/ .u-swipe-action-item { margin-left: 40rpx;
border-radius: 24rpx; padding-top: 32rpx;
margin: 20rpx 0; display: flex;
flex-direction: column;
.item { .have_image {
height: 160rpx;
background: #FFFFFF;
padding: 30rpx;
display: flex; display: flex;
justify-content: space-between;
align-items: center; align-items: center;
border-radius: 24rpx; font-size: 28rpx;
overflow: hidden; font-weight: bold;
.ava {
width: 102rpx; image {
height: 102rpx; width: 28rpx;
border-radius: 50%; height: 28rpx;
//background-image: url('../../static/logo.png'); }
background-size: 100% 100%;
.u-badge { .title {
left: 95rpx; padding-left: 12rpx;
} }
} }
.r { .one {
width: 498rpx; font-size: 28rpx;
margin-top: 26rpx;
}
}
}
.title { .box {
.swiper {
position: relative;
.hint {
position: absolute;
top: 46rpx;
right: 34rpx;
width: 202rpx;
height: 62rpx;
background: rgba(255, 255, 255, 0.2);
border-radius: 34rpx;
display: flex; display: flex;
justify-content: space-between; justify-content: center;
align-items: flex-end; align-items: center;
.name { image {
width: 460rpx; width: 24rpx;
overflow: hidden; //超出隐藏 height: 28rpx;
white-space: nowrap; //不折行
text-overflow: ellipsis; //溢出显示省略号
font-size: 32rpx;
font-family: PingFang SC-Bold, PingFang SC;
font-weight: bold;
color: #333333;
} }
.time { .t {
font-size: 24rpx; font-size: 28rpx;
font-family: PingFang SC-Regular, PingFang SC;
font-weight: 400; font-weight: 400;
color: #C9C9D0; color: #333333;
margin-left: 14rpx;
}
} }
} }
.msg { .lable {
width: 100%; display: flex;
margin-top: 20rpx; align-items: center;
font-size: 28rpx; font-size: 28rpx;
font-family: PingFang SC-Regular, PingFang SC; font-family: PingFang SC-Regular, PingFang SC;
font-weight: 400; font-weight: 400;
color: #434343; color: #434343;
overflow: hidden; //超出隐藏 margin-left: 50rpx;
white-space: nowrap; //不折行 margin-top: 48rpx;
text-overflow: ellipsis; //溢出显示省略号
} .lable-div {
} height: 54rpx;
background: #e5f4ff;
border-radius: 28rpx;
line-height: 54rpx;
padding: 0 38rpx;
} }
} }
.line {
width: 636rpx;
// height: 2rpx;
// background-color: #c8d3e2;
// border-bottom: 2rpx dashed #c8d3e2;
margin: 0 auto;
margin-top: 44rpx;
} }
.circles {
background: #f5f6fa;
width: 44rpx;
height: 44rpx;
border-radius: 50%;
position: absolute;
right: -22rpx;
top: 1002rpx;
} }
.nologi-bgc-imga { .circle {
background: #f5f6fa;
width: 44rpx;
height: 44rpx;
border-radius: 50%;
position: absolute; position: absolute;
top: -120rpx; left: -22rpx;
left: 0rpx; top: 1002rpx;
width: 100%;
height: 100%;
pointer-events: none;
} }
.nologi-noimg {
width: 338rpx; width: 686rpx;
height: 338rpx;
margin: 0 auto; margin: 0 auto;
padding-top: 200rpx; border-radius: 42rpx 42rpx 24rpx 24rpx;
box-sizing: content-box; overflow: hidden;
z-index: 10;
position: relative;
background: #fff;
.ling {
height: 42rpx;
display: flex;
align-items: center;
margin-left: 58rpx;
margin-top: 24rpx;
.img {
height: 42rpx;
width: 42rpx;
margin-right: 8rpx;
} }
.nologi-text {
width: 100%; .text {
height: 44rpx; height: 34rpx;
font-size: 32rpx; font-size: 24rpx;
font-family: 'PingFang SC-Regular, PingFang SC'; font-family: PingFang SC-Regular, PingFang SC;
font-weight: 400; font-weight: 400;
color: #C9C9D0; color: #333333;
line-height: 44rpx; line-height: 34rpx;
text-align: center; }
margin-top: 104rpx;
} }
.nologi-nobutton { .box-bq {
width: 392rpx; height: 40rpx;
height: 84rpx; font-size: 28rpx;
background: linear-gradient(86deg, #C2D2F9 0%, #C5C2F3 100%); font-family: PingFang SC-Bold, PingFang SC;
border-radius: 42rpx; font-weight: bold;
color: #333333;
margin-left: 58rpx;
margin-top: 24rpx;
line-height: 40rpx;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center;
font-size: 28rpx; .xian {
width: 2rpx;
height: 20rpx;
background: #e0e2e8;
margin: 0 32rpx;
}
}
.box-name {
.simg {
width: 48rpx;
height: 48rpx;
margin-left: 20rpx;
}
height: 56rpx;
font-size: 40rpx;
font-family: PingFang SC-Heavy,
PingFang SC;
font-weight: 800;
color: #4a4a4a;
line-height: 56rpx;
margin-left: 58rpx;
margin-top: 24rpx;
display: flex;
align-items: center;
image {
width: 48rpx;
height: 48rpx;
margin-left: 20rpx;
margin-top: 5rpx;
}
}
.box-jj {
.box-jj-ta {
width: 618rpx;
height: 58rpx;
background: #f5f6fa;
border-radius: 30rpx 30rpx 30rpx 30rpx;
margin: 0 auto; margin: 0 auto;
font-family: 'PingFang SC-Regular, PingFang SC'; margin-top: 32rpx;
display: flex;
align-items: center;
justify-content: space-between;
.text2 {
height: 34rpx;
font-size: 24rpx;
font-family: PingFang SC-Regular, PingFang SC;
font-weight: 400; font-weight: 400;
color: #415C9E; color: #333333;
margin-top: 40rpx; line-height: 34rpx;
margin-right: 28rpx;
}
.box-jj-ta-left {
display: flex;
align-items: center;
.xian {
width: 2rpx;
height: 20rpx;
background: #e0e2e8;
margin: 0 18rpx;
} }
.home-page-container{
::v-deep .u-navbar__content{ .te {
background: none!important; height: 34rpx;
background-color: none!important; font-size: 24rpx;
font-family: PingFang SC-Regular, PingFang SC;
font-weight: 400;
color: #333333;
line-height: 34rpx;
} }
::v-deep .u-status-bar{
background: none!important; .img {
background-color: none!important; width: 24rpx;
height: 24rpx;
margin: 0 18rpx 0 26rpx;
} }
} }
.msgbadge{
margin-left: 50rpx;
} }
width: 100%;
height: auto;
background-color: #fff;
position: relative;
}
}
.pageanima {
position: relative;
}
.pagePop {
animation-name: pagePop; // 动画名称
animation-timing-function: linear; // 动画执行方式,linear:匀速;ease:先慢再快后慢;ease-in:由慢速开始;ease-out:由慢速结束;ease-in-out:由慢速开始和结束;
// animation-delay: 1s; // 动画延迟时间
animation-duration: 0.5s; // 动画完成时间
}
@keyframes pagePop {
0% {
top: 100rpx;
opacity: 0.5;
}
100% {
top: 0;
opacity: 1;
}
}
</style> </style>
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
}, },
gotopage(item){ gotopage(item){
uni.navigateTo({ uni.navigateTo({
url: '/pages/announcement/detail'+'?id='+item.businessId url: '/pagesAnnouncement/announcement/detail'+'?id='+item.businessId
}) })
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment