1222 lines
35 KiB
Vue
1222 lines
35 KiB
Vue
<template>
|
|
<view>
|
|
<u-navbar title="详情">
|
|
<template #right>
|
|
<!-- <view style="width: 50rpx; font-size: 32rpx; margin-right: 0.1rem">
|
|
<u-icon
|
|
style="font-size: 0.22rem; color: #b4b6bd"
|
|
v-if="!detailsData.isCllect"
|
|
name="star"
|
|
@click="onStar(0)"
|
|
></u-icon>
|
|
<u-icon
|
|
style="font-size: 0.22rem; color: #ffc300"
|
|
v-else
|
|
name="star-fill"
|
|
@click="onStar(1)"
|
|
></u-icon>
|
|
</view> -->
|
|
</template>
|
|
</u-navbar>
|
|
|
|
<!-- <view class="detail">
|
|
<view class="flex-col section_3">
|
|
<view class="justify-between group">
|
|
<view class="flex-row">
|
|
<image
|
|
:src="$u.http.config.imgUrl + detailsData.userHead"
|
|
class="image image_4"
|
|
/>
|
|
<view class="flex-col items-start group_3">
|
|
<text class="text_1">{{detailsData.userName}}</text>
|
|
<text class="text_2">{{detailsData.schoolName}}</text>
|
|
</view>
|
|
</view>
|
|
<text class="text_3">{{detailsData.creationTime}}</text>
|
|
</view>
|
|
<text class="text_4">{{detailsData.title}}</text>
|
|
<view class="flex-col group_4">
|
|
<view class="flex-col group_31">
|
|
{{detailsData.content}}
|
|
</view>
|
|
<view v-if="detailsData.imageUrl.indexOf('.')>0">
|
|
<image
|
|
v-for="(v, i) in detailsData.imageUrl.split(',')" :key="i" :src="v?$u.http.config.imgUrl + v:''"
|
|
class="image_5"
|
|
/>
|
|
</view>
|
|
</view>
|
|
<view class="flex-row" v-if="detailsData.type==1">
|
|
<text v-for="(v, i) in detailsData.sysSignStr.split(',')" :key="i" class="text_21" ># {{v}}</text>
|
|
</view>
|
|
</view>
|
|
</view> -->
|
|
<information :list="[detailsData]" :type="2" :nolink="true" :isDel="isDel" @onDelete="onDelete"></information>
|
|
<!-- 评论 -->
|
|
<view class="comment" v-if="detailsData.type != 3">
|
|
<view class="flex-col section_4">
|
|
<view class="justify-between group_8">
|
|
<text class="text_22">评论 {{ detailsData.commentCount }}</text>
|
|
<!-- {{ detailsData.collectCount }} 收藏 -->
|
|
<text class="text_23">
|
|
<text v-if="detailsData.type != 0" style="padding: 0 0.1rem">|</text><text v-if="detailsData.type != 0">{{
|
|
detailsData.forwardCount }} 转发</text></text>
|
|
</view>
|
|
<scroll-view scroll-y="true" style="width: 100%; height: calc(100vh - 1.4rem)" @scrolltolower="onreachBottom">
|
|
<view class="flex-col group_27">
|
|
<view class="flex-col group" v-for="(item, index) in commonData" :key="index">
|
|
<view class="justify-between group_6">
|
|
<view class="flex-row reply-title">
|
|
<u-avatar :src="$u.http.config.imgUrl + item.userHead" class="image image_6"></u-avatar>
|
|
<text class="text_24">{{ item.userName }}</text>
|
|
<text class="author" v-if="item.userId == detailsData.userId">作者</text>
|
|
<text class="text_27">{{ item.creationTime }}</text>
|
|
</view>
|
|
|
|
<!-- <view class="text-delete" v-if="
|
|
item.userId == vuex_user.id ||
|
|
detailsData.userId == vuex_user.id
|
|
" @tap="DelateComment(item.commendId,item.listCount)"> 删除
|
|
</view> -->
|
|
<view class="flex-row" style="align-items: center;">
|
|
<!-- flex-row group_12 -->
|
|
<view @click="onLike(item, index)">
|
|
<image src="/static/common/img/homepage/like.png" class="icon-like" v-if="!item.isLike" />
|
|
<image src="/static/common/img/homepage/like-active.png" class="icon-like" v-else />
|
|
<!-- <text class="text_25">{{ item.likesCount }}</text> -->
|
|
</view>
|
|
<u-icon class="icon-1" name="trash" color="#999" size="40" v-if="
|
|
item.userId == vuex_user.id ||
|
|
detailsData.userId == vuex_user.id
|
|
" @click="DelateComment(item.commendId, item.listCount)"></u-icon>
|
|
</view>
|
|
|
|
</view>
|
|
<view class="flex-col gruop_8">
|
|
<view class="justify-around group_8_1">
|
|
<text class="text_26" @click="onreply(item)">{{
|
|
item.content
|
|
}}</text>
|
|
|
|
</view>
|
|
|
|
|
|
|
|
</view>
|
|
<view class="flex-col items-start group_9" v-for="i in item.list" :key="i.commendId">
|
|
<view class="flex-row group_13">
|
|
<u-avatar :src="$u.http.config.imgUrl + i.userHead" class="image image_9"></u-avatar>
|
|
<view class="flex-col group_14">
|
|
<view class="justify-between">
|
|
<view>
|
|
|
|
<text class="text_28">{{ i.userName }}</text>
|
|
<text class="author" v-if="i.userId == detailsData.userId">作者</text>
|
|
<text class="text_30">{{ i.creationTime }}</text>
|
|
</view>
|
|
<u-icon class="icon-1" name="trash" color="#999" size="40" v-if="
|
|
item.userId == vuex_user.id ||
|
|
detailsData.userId == vuex_user.id
|
|
" @click="DelateComment(item.commendId, item.listCount)"></u-icon>
|
|
</view>
|
|
<view class="flex-col items-start group_15">
|
|
<view class="justify-between" style="width: 100%;">
|
|
<text class="text_29">{{ i.content }}</text>
|
|
<!-- <text style="color: #999;" v-if="
|
|
item.userId == vuex_user.id ||
|
|
detailsData.userId == vuex_user.id
|
|
" @tap="DelateComment(i.commendId)">删除</text> -->
|
|
|
|
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="justify-evenly section_5" @click="onReplyDetails(item)" v-show="item.listCount > 3">
|
|
<text class="text_42">{{ item.listCount }}回复</text>
|
|
<image src="/static/common/img/16486282410596443868.png" class="image_12" />
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</scroll-view>
|
|
</view>
|
|
</view>
|
|
<u-mask :show="show" @click="isMask">
|
|
<view @tap.stop>
|
|
<msgbox :isCommonWords="true" @onsend="onSend" @onmsgShow="onMsgShow" ref="msg" :placeholder="placeholder">
|
|
</msgbox>
|
|
</view>
|
|
</u-mask>
|
|
<view v-if="detailsData.type != 3">
|
|
<view class="flex-row btn" v-show="!isMsgShow">
|
|
<view class="icon-1" @click="onMsg()">
|
|
<image src="/static/common/img/homepage/comment.png" class="image_7" />
|
|
<!-- <text>评论</text> -->
|
|
<text>{{ detailsData.commentCount }}</text>
|
|
</view>
|
|
<view class="icon-2">
|
|
<!-- <u-icon
|
|
style="font-size: 0.22rem; color: #b4b6bd"
|
|
v-if="!detailsData.isCllect"
|
|
name="star"
|
|
@click="onStar(0)"
|
|
></u-icon> -->
|
|
<image v-if="!detailsData.isCllect" src="/static/common/img/homepage/star.png" class="image_7"
|
|
@click="onStar(0)" />
|
|
<u-icon style="font-size: 0.2rem; color: #ffc300" v-else class="image_8" name="star-fill"
|
|
@click="onStar(1)"></u-icon>
|
|
{{ detailsData.collectCount }}
|
|
</view>
|
|
<!-- <view class="icon-2">
|
|
<image src="/static/common/img/16486275583636337201.png" class="image_8" />
|
|
<text>转发</text>
|
|
</view> -->
|
|
</view>
|
|
</view>
|
|
<u-toast ref="uToast" />
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
import information from "../../../components/Information.vue";
|
|
import msgbox from "../../../components/messageBox.vue";
|
|
export default {
|
|
data() {
|
|
return {
|
|
detailsData: {},
|
|
obj: {},
|
|
commonData: [],
|
|
isMsgShow: false,
|
|
level: "",
|
|
replyUserId: "",
|
|
placeholder: "",
|
|
show: false,
|
|
commendId: "",
|
|
PageIndex: 1,
|
|
PageSize: 10,
|
|
total: 0,
|
|
flag: "",
|
|
isDel: false, // 是否显示删除按钮
|
|
};
|
|
},
|
|
onLoad(e) {
|
|
this.isDel = e.isDel
|
|
this.detailsData = JSON.parse(e.data);
|
|
console.log('this.detailsData======>', this.detailsData);
|
|
|
|
if (this.detailsData.type == undefined) {
|
|
this.detailsData.type = this.detailsData.mytype;
|
|
}
|
|
console.log(JSON.parse(e.data));
|
|
// console.log(this.detailsData)
|
|
if (this.detailsData.flag == "Collection") {
|
|
// console.log('收藏')
|
|
// this.detailsData.mytype = this.detailsData.type
|
|
this.detailsData.id = this.detailsData.articleId;
|
|
this.detailsData.isCllect = true;
|
|
}
|
|
|
|
this.getJournaArticle();
|
|
},
|
|
methods: {
|
|
//删除我的发布
|
|
onDelete(val) {
|
|
const data = {
|
|
type: 1,
|
|
id: val.id
|
|
}
|
|
if (this.type == 0) {
|
|
data.type = 3
|
|
}
|
|
uni.showModal({
|
|
content: '确定删除此内容?',
|
|
success: (res) => {
|
|
if (res.confirm) {
|
|
this.$u.apiList.DelateArticle(data).then(res => {
|
|
this.$refs.uToast.show({
|
|
title: '删除成功',
|
|
type: 'success',
|
|
})
|
|
uni.navigateBack({
|
|
delta: 1
|
|
})
|
|
})
|
|
.catch(err => {
|
|
this.$refs.uToast.show({
|
|
title: '删除失败',
|
|
type: 'error',
|
|
})
|
|
})
|
|
} else if (res.cancel) {
|
|
// console.log('用户点击取消');
|
|
}
|
|
}
|
|
});
|
|
|
|
},
|
|
// 删除评论
|
|
async DelateComment(id, listCount) {
|
|
// 判断当前学校是否认证,未认证不可删除
|
|
const req = {
|
|
userId: this.vuex_user.id,
|
|
};
|
|
const res = await this.$u.apiList.MyPage(req);
|
|
console.log(JSON.parse(JSON.stringify(res)), "res");
|
|
const edcationList = res.edcationList;
|
|
if (!edcationList.length) {
|
|
return this.$refs.uToast.show({
|
|
title: "认证后可进行删除操作",
|
|
type: "none",
|
|
});
|
|
}
|
|
const findRow = edcationList.find((x) => x.isSelected === true);
|
|
if ([0, 2].includes(findRow.certifyStatus)) {
|
|
return this.$refs.uToast.show({
|
|
title: "认证后可进行删除操作",
|
|
type: "none",
|
|
});
|
|
}
|
|
|
|
uni.showModal({
|
|
// title: "提示",
|
|
content: "确定删除该评论",
|
|
success: (res) => {
|
|
if (res.confirm) {
|
|
this.$u.api
|
|
.DelateComment({
|
|
id: id,
|
|
})
|
|
.then((res) => {
|
|
this.commonData = [];
|
|
this.PageIndex = 1;
|
|
this.getJournaArticle(2, listCount);
|
|
this.$refs.uToast.show({
|
|
title: "删除成功",
|
|
type: "success",
|
|
});
|
|
})
|
|
.catch((err) => {
|
|
this.$refs.uToast.show({
|
|
title: "删除失败",
|
|
type: "error",
|
|
});
|
|
});
|
|
} else if (res.cancel) {
|
|
// console.log('用户点击取消');
|
|
}
|
|
},
|
|
});
|
|
},
|
|
onSend(msg) {
|
|
const data = {
|
|
commendId: this.commendId,
|
|
articleId: this.detailsData.id,
|
|
userId: this.vuex_user.id,
|
|
replyUserId: this.replyUserId,
|
|
content: msg,
|
|
level: this.level,
|
|
type: this.detailsData.mytype,
|
|
};
|
|
if (!this.detailsData.id) {
|
|
data.articleId = this.detailsData.articleId;
|
|
}
|
|
if (this.detailsData.mytype == 2) {
|
|
if (this.detailsData.type || this.detailsData.type == 0) {
|
|
data.type = this.detailsData.type;
|
|
} else {
|
|
data.type = 1;
|
|
}
|
|
}
|
|
this.$u.apiList.InsertComment(data).then((res) => {
|
|
this.commonData = [];
|
|
this.PageIndex = 1;
|
|
this.getJournaArticle(1);
|
|
});
|
|
},
|
|
getJournaArticle(val, listCount) {
|
|
const data = {
|
|
PageIndex: this.PageIndex,
|
|
PageSize: this.PageSize,
|
|
Title: this.detailsData.title,
|
|
Keyword: this.detailsData.content,
|
|
id: this.detailsData.id,
|
|
type: this.detailsData.mytype,
|
|
};
|
|
if (this.detailsData.mytype == 2) {
|
|
if (this.detailsData.type || this.detailsData.type == 0) {
|
|
data.type = this.detailsData.type;
|
|
} else {
|
|
data.type = 1;
|
|
}
|
|
}
|
|
if (!this.detailsData.id) {
|
|
data.id = this.detailsData.articleId;
|
|
}
|
|
this.$u.apiList.GetJournaArticle(data).then((res) => {
|
|
this.total = res.total;
|
|
if (this.commonData.length == 0) {
|
|
this.commonData = res.items;
|
|
} else if (this.commonData.length < res.total) {
|
|
this.commonData = this.commonData.concat(res.items);
|
|
}
|
|
if (val == 1) {
|
|
this.detailsData.commentCount++;
|
|
}
|
|
|
|
if (val == 2) {
|
|
if (listCount) {
|
|
console.log('listCount======>', listCount, this.detailsData.commentCount);
|
|
this.detailsData.commentCount = this.detailsData.commentCount - listCount - 1;
|
|
console.log('listCount======>', listCount, this.detailsData.commentCount);
|
|
} else {
|
|
this.detailsData.commentCount--;
|
|
}
|
|
}
|
|
uni.$emit("echoList", {
|
|
type: "evaluate",
|
|
data: {
|
|
commentCount: this.detailsData.commentCount,
|
|
},
|
|
});
|
|
});
|
|
},
|
|
//收藏
|
|
async onStar(val) {
|
|
// 判断当前学校是否认证,未认证不可收藏
|
|
const req = {
|
|
userId: this.vuex_user.id,
|
|
};
|
|
const res = await this.$u.apiList.MyPage(req);
|
|
console.log(JSON.parse(JSON.stringify(res)), "res");
|
|
const edcationList = res.edcationList;
|
|
if (!edcationList.length) {
|
|
return this.$refs.uToast.show({
|
|
title: "认证后可进行收藏操作",
|
|
type: "none",
|
|
});
|
|
}
|
|
const findRow = edcationList.find((x) => x.isSelected === true);
|
|
if ([0, 2].includes(findRow.certifyStatus)) {
|
|
return this.$refs.uToast.show({
|
|
title: "认证后可进行收藏操作",
|
|
type: "none",
|
|
});
|
|
}
|
|
const data = {
|
|
id: this.detailsData.id,
|
|
type: this.detailsData.type,
|
|
};
|
|
if (!this.detailsData.id) {
|
|
data.id = this.detailsData.articleId;
|
|
}
|
|
this.$u.apiList
|
|
.LikeCollect(data)
|
|
.then((res) => {
|
|
if (val == 0) {
|
|
let a = this.detailsData;
|
|
a.isCllect = true;
|
|
this.detailsData = "";
|
|
this.detailsData = a;
|
|
this.$refs.uToast.show({
|
|
title: "收藏成功",
|
|
type: "success",
|
|
});
|
|
this.detailsData.collectCount++;
|
|
uni.$emit("echoList", {
|
|
type: "star",
|
|
data: {
|
|
isCllect: true,
|
|
},
|
|
});
|
|
} else if (val == 1) {
|
|
let a = this.detailsData;
|
|
a.isCllect = false;
|
|
this.detailsData = "";
|
|
this.detailsData = a;
|
|
this.$refs.uToast.show({
|
|
title: "取消收藏成功",
|
|
type: "success",
|
|
});
|
|
this.detailsData.collectCount--;
|
|
uni.$emit("echoList", {
|
|
type: "star",
|
|
data: {
|
|
isCllect: false,
|
|
},
|
|
});
|
|
}
|
|
})
|
|
.catch((err) => {
|
|
this.$refs.uToast.show({
|
|
title: "收藏失败",
|
|
type: "error",
|
|
});
|
|
});
|
|
},
|
|
//评论
|
|
async onMsg() {
|
|
// 判断当前学校是否认证,未认证不可评论
|
|
const req = {
|
|
userId: this.vuex_user.id,
|
|
};
|
|
const res = await this.$u.apiList.MyPage(req);
|
|
console.log(JSON.parse(JSON.stringify(res)), "res");
|
|
const edcationList = res.edcationList;
|
|
if (!edcationList.length) {
|
|
return this.$refs.uToast.show({
|
|
title: "认证后可进行评论操作",
|
|
type: "none",
|
|
});
|
|
}
|
|
const findRow = edcationList.find((x) => x.isSelected === true);
|
|
if ([0, 2].includes(findRow.certifyStatus)) {
|
|
return this.$refs.uToast.show({
|
|
title: "认证后可进行评论操作",
|
|
type: "none",
|
|
});
|
|
}
|
|
this.show = true;
|
|
this.isMsgShow = true;
|
|
// this.$refs.msg.placeholder = "请输入内容";
|
|
this.$refs.msg.placeholder = "高楼平地起,评论全靠你...";
|
|
this.$refs.msg.inputFocus();
|
|
this.level = 0;
|
|
},
|
|
//点赞
|
|
async onLike(item, index) {
|
|
// 判断当前学校是否认证,未认证不可点赞
|
|
const req = {
|
|
userId: this.vuex_user.id,
|
|
};
|
|
const res = await this.$u.apiList.MyPage(req);
|
|
console.log(JSON.parse(JSON.stringify(res)), "res");
|
|
const edcationList = res.edcationList;
|
|
if (!edcationList.length) {
|
|
return this.$refs.uToast.show({
|
|
title: "认证后可进行点赞操作",
|
|
type: "none",
|
|
});
|
|
}
|
|
const findRow = edcationList.find((x) => x.isSelected === true);
|
|
if ([0, 2].includes(findRow.certifyStatus)) {
|
|
return this.$refs.uToast.show({
|
|
title: "认证后可进行点赞操作",
|
|
type: "none",
|
|
});
|
|
}
|
|
const data = {
|
|
id: item.commendId,
|
|
type: 2,
|
|
};
|
|
this.$u.apiList
|
|
.LikeHe(data)
|
|
.then((res) => {
|
|
if (this.commonData[index].isLike == false) {
|
|
this.commonData[index].isLike = true;
|
|
this.commonData[index].likesCount++;
|
|
this.$refs.uToast.show({
|
|
title: "点赞成功",
|
|
type: "success",
|
|
});
|
|
} else {
|
|
if (this.commonData[index].likesCount > 0) {
|
|
this.commonData[index].isLike = false;
|
|
this.commonData[index].likesCount--;
|
|
this.$refs.uToast.show({
|
|
title: "取消点赞成功",
|
|
type: "success",
|
|
});
|
|
}
|
|
}
|
|
})
|
|
.catch((err) => {
|
|
this.$refs.uToast.show({
|
|
title: "点赞失败",
|
|
type: "error",
|
|
});
|
|
});
|
|
},
|
|
//回复
|
|
onreply(item) {
|
|
this.show = true;
|
|
this.placeholder = "回复@" + item.userName;
|
|
this.$refs.msg.placeholder = this.placeholder;
|
|
this.$refs.msg.inputFocus();
|
|
this.level = 1;
|
|
this.replyUserId = item.userId;
|
|
this.commendId = item.commendId;
|
|
},
|
|
isMask() {
|
|
this.show = false;
|
|
this.isMsgShow = false;
|
|
},
|
|
onMsgShow(val) {
|
|
this.isMsgShow = val;
|
|
this.show = val;
|
|
},
|
|
onReplyDetails(item) {
|
|
const data = {
|
|
Title: this.detailsData.title,
|
|
Keyword: this.detailsData.content,
|
|
id: item.commendId,
|
|
};
|
|
item.type = this.detailsData.mytype;
|
|
item.articleId = this.detailsData.id;
|
|
this.$u.route({
|
|
url: "pages/AlumniCircle/ReplyDetails/ReplyDetails",
|
|
params: {
|
|
data: JSON.stringify(data),
|
|
head: JSON.stringify(item),
|
|
},
|
|
});
|
|
},
|
|
onreachBottom() {
|
|
let num = this.PageIndex * this.PageSize;
|
|
if (num > this.total) return;
|
|
this.PageIndex++;
|
|
this.getJournaArticle();
|
|
},
|
|
//返回上一级
|
|
router() {
|
|
if (this.detailsData.route == 1) {
|
|
uni.switchTab({
|
|
url: "../../my/my/my",
|
|
});
|
|
} else if (this.detailsData.route == 2) {
|
|
if (this.detailsData.flag == 0) {
|
|
this.$u.route({
|
|
url:
|
|
"pages/AlumniCircle/userDetail/userDetail?id=" +
|
|
this.detailsData.userId +
|
|
"&type=0",
|
|
});
|
|
} else {
|
|
this.$u.route({
|
|
url:
|
|
"pages/AlumniCircle/userDetail/userDetail?id=" +
|
|
this.detailsData.userId +
|
|
"&type=3",
|
|
});
|
|
}
|
|
} else if (this.detailsData.route == 3) {
|
|
this.$u.route({
|
|
url:
|
|
"pages/my/ReleaseList/ReleaseList?Id=" +
|
|
this.detailsData.myschoolId +
|
|
"&type=" +
|
|
this.detailsData.mytype,
|
|
});
|
|
} else {
|
|
uni.switchTab({
|
|
url: "/pages/AlumniCircle/alumnus/alumnus",
|
|
});
|
|
}
|
|
},
|
|
},
|
|
components: {
|
|
msgbox,
|
|
information,
|
|
},
|
|
};
|
|
</script>
|
|
|
|
<style lang="scss" scoped>
|
|
.detail {
|
|
.section_3 {
|
|
padding: 0.11rem 0.14rem 0.11rem 0.15rem;
|
|
background-color: rgb(255, 255, 255);
|
|
|
|
.group {
|
|
padding: 0 0.005rem;
|
|
|
|
.text_3 {
|
|
margin-top: 0.035rem;
|
|
color: rgb(180, 182, 189);
|
|
font-size: 0.12rem;
|
|
font-family: PingFang;
|
|
line-height: 0.12rem;
|
|
}
|
|
|
|
.image {
|
|
width: 0.3rem;
|
|
height: 0.3rem;
|
|
}
|
|
|
|
.image_4 {
|
|
margin-bottom: 0.02rem;
|
|
}
|
|
|
|
.group_3 {
|
|
margin-left: 0.05rem;
|
|
margin-top: 0.02rem;
|
|
|
|
.text_1 {
|
|
margin-left: 0.02rem;
|
|
color: rgb(2, 2, 2);
|
|
font-size: 0.14rem;
|
|
font-family: PingFang;
|
|
line-height: 0.13rem;
|
|
}
|
|
|
|
.text_2 {
|
|
margin-top: 0.055rem;
|
|
color: rgb(180, 182, 189);
|
|
font-size: 0.12rem;
|
|
font-family: PingFang;
|
|
line-height: 0.12rem;
|
|
}
|
|
}
|
|
}
|
|
|
|
.text_4 {
|
|
margin-left: 0.01rem;
|
|
margin-top: 0.23rem;
|
|
color: rgb(2, 2, 2);
|
|
font-size: 0.18rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.17rem;
|
|
}
|
|
|
|
.group_4 {
|
|
margin-top: 0.2rem;
|
|
|
|
.image_5 {
|
|
margin-top: 0.025rem;
|
|
width: 3.45rem;
|
|
height: 1.66rem;
|
|
}
|
|
|
|
.group_31 {
|
|
padding: 0 0.01rem;
|
|
|
|
.group_5 {
|
|
margin-left: 0.01rem;
|
|
align-self: flex-start;
|
|
|
|
.text_5 {
|
|
margin-top: 0.015rem;
|
|
color: rgb(160, 162, 172);
|
|
font-size: 0.15rem;
|
|
font-family: PingFang;
|
|
line-height: 0.14rem;
|
|
}
|
|
|
|
.text_6 {
|
|
margin-left: 0.07rem;
|
|
color: rgb(255, 88, 109);
|
|
font-size: 0.18rem;
|
|
font-family: PingFang;
|
|
line-height: 0.16rem;
|
|
}
|
|
}
|
|
|
|
.group_28 {
|
|
margin-top: 0.065rem;
|
|
align-self: flex-start;
|
|
|
|
.text_7 {
|
|
color: rgb(160, 162, 172);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.24rem;
|
|
}
|
|
|
|
.text_8 {
|
|
margin-left: 0.05rem;
|
|
color: rgb(55, 59, 72);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.24rem;
|
|
}
|
|
}
|
|
|
|
.group_7 {
|
|
margin-left: 0.01rem;
|
|
align-self: flex-start;
|
|
|
|
.text_9 {
|
|
color: rgb(180, 182, 189);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.24rem;
|
|
}
|
|
|
|
.text_10 {
|
|
margin-left: 0.055rem;
|
|
color: rgb(55, 59, 72);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.24rem;
|
|
}
|
|
}
|
|
|
|
.group_29 {
|
|
align-self: flex-start;
|
|
|
|
.text_11 {
|
|
color: rgb(180, 182, 189);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.24rem;
|
|
}
|
|
|
|
.text_12 {
|
|
margin-left: 0.04rem;
|
|
color: rgb(55, 59, 72);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.24rem;
|
|
}
|
|
}
|
|
|
|
.group_30 {
|
|
align-self: flex-start;
|
|
|
|
.text_13 {
|
|
color: rgb(180, 182, 189);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.24rem;
|
|
}
|
|
|
|
.text_14 {
|
|
margin-left: 0.05rem;
|
|
color: rgb(55, 59, 72);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.24rem;
|
|
}
|
|
}
|
|
|
|
.group_10 {
|
|
align-self: flex-start;
|
|
|
|
.text_15 {
|
|
color: rgb(180, 182, 189);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.24rem;
|
|
}
|
|
|
|
.text_16 {
|
|
margin-left: 0.04rem;
|
|
color: rgb(55, 59, 72);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.24rem;
|
|
}
|
|
}
|
|
|
|
.group_11 {
|
|
align-self: flex-start;
|
|
|
|
.text_17 {
|
|
color: rgb(180, 182, 189);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.24rem;
|
|
}
|
|
|
|
.text_18 {
|
|
margin-left: 0.04rem;
|
|
color: rgb(55, 59, 72);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.24rem;
|
|
}
|
|
}
|
|
|
|
.text_19 {
|
|
color: rgb(180, 182, 189);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.24rem;
|
|
}
|
|
|
|
.text_20 {
|
|
margin-left: 0.065rem;
|
|
color: rgb(55, 59, 72);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.24rem;
|
|
}
|
|
}
|
|
}
|
|
|
|
.text_21 {
|
|
margin-left: 0.05rem;
|
|
margin-top: 0.11rem;
|
|
align-self: flex-start;
|
|
color: rgb(44, 109, 255);
|
|
font-size: 0.14rem;
|
|
font-family: PingFang;
|
|
line-height: 0.16rem;
|
|
}
|
|
}
|
|
}
|
|
|
|
.comment {
|
|
.section_4 {
|
|
padding: 0.2rem 0 0.5rem 0;
|
|
background-color: rgb(255, 255, 255);
|
|
// margin-top: 0.1rem;
|
|
|
|
.section_5 {
|
|
margin: 0.13rem 0.85rem;
|
|
padding: 0.04rem 0.05rem 0.05rem 0.095rem;
|
|
background-color: rgb(246, 247, 250);
|
|
border-radius: 8rpx;
|
|
width: 0.6rem;
|
|
|
|
.text_42 {
|
|
color: rgb(2, 2, 2);
|
|
font-size: 0.12rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.11rem;
|
|
}
|
|
|
|
.image_12 {
|
|
margin-top: 0.015rem;
|
|
width: 0.05rem;
|
|
height: 0.09rem;
|
|
}
|
|
}
|
|
|
|
.group_8 {
|
|
margin-left: 0.025rem;
|
|
padding: 0 0.15rem;
|
|
|
|
.text_22 {
|
|
margin-bottom: 0.1rem;
|
|
color: rgba(0, 0, 0, 0.9);
|
|
font-size: 32rpx;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.14rem;
|
|
}
|
|
|
|
.text_23 {
|
|
color: rgb(180, 182, 189);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.17rem;
|
|
}
|
|
}
|
|
|
|
.group_27 {
|
|
margin-top: 0.1rem;
|
|
|
|
.group {
|
|
padding: 0.1rem 0.2rem;
|
|
// border-bottom: 1px solid #eee;
|
|
|
|
.gruop_8 {
|
|
.group_8_1 {
|
|
padding-right: 0.2rem;
|
|
}
|
|
}
|
|
|
|
.group_12 {
|
|
margin-right: 4rpx;
|
|
margin-top: 0.1rem;
|
|
// width: 100%;
|
|
// display: flex;
|
|
justify-content: flex-end;
|
|
|
|
.text_25 {
|
|
// margin-top: 0.04rem;
|
|
margin-top: 7rpx;
|
|
color: #797979;
|
|
font-size: 28rpx;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.12rem;
|
|
}
|
|
|
|
.image_8 {
|
|
margin-left: 0.045rem;
|
|
flex-shrink: 0;
|
|
width: 0.16rem;
|
|
height: 0.15rem;
|
|
}
|
|
}
|
|
|
|
.group_6 {
|
|
// padding-right: 2rpx;
|
|
// margin-right: 0.02rem;
|
|
|
|
|
|
|
|
.image_6 {
|
|
border-radius: 50%;
|
|
flex-shrink: 0;
|
|
width: 0.3rem !important;
|
|
height: 0.3rem !important;
|
|
flex: 0 0 0.3rem !important;
|
|
}
|
|
|
|
.text_24 {
|
|
margin-left: 0.13rem;
|
|
margin-top: 0.07rem;
|
|
color: rgb(2, 2, 2);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.13rem;
|
|
}
|
|
|
|
.author {
|
|
color: #797979;
|
|
background-color: #f2f2f2;
|
|
margin-top: 0.05rem;
|
|
font-size: 0.13rem;
|
|
line-height: 0.2rem;
|
|
margin-left: 0.13rem;
|
|
height: 0.2rem;
|
|
padding: 0 0.05rem;
|
|
border-radius: 1rem;
|
|
}
|
|
|
|
// .author {
|
|
// border-radius: 25%;
|
|
// margin-left: 0.13rem;
|
|
// margin-top: 0.04rem;
|
|
// padding:0 0.05rem;
|
|
// color: #797979;
|
|
// font-size: 0.12rem;
|
|
// font-family: Adobe Heiti Std;
|
|
// height: 0.13rem;
|
|
// line-height: 0.13rem;
|
|
// background-color: #F2F2F2;
|
|
// }
|
|
|
|
.reply-title {
|
|
display: flex;
|
|
// justify-content: space-between;
|
|
align-items: flex-start;
|
|
}
|
|
}
|
|
|
|
.text_26 {
|
|
width: 100%;
|
|
padding-left: 0.45rem;
|
|
align-self: center;
|
|
color: rgb(55, 59, 72);
|
|
font-size: 0.13rem;
|
|
font-family: Adobe Heiti Std;
|
|
word-break: break-all;
|
|
}
|
|
|
|
.text_27 {
|
|
margin-left: 0.13rem;
|
|
// margin-top: 0.13rem;
|
|
margin-top: 0.08rem;
|
|
align-self: flex-start;
|
|
color: rgb(180, 182, 189);
|
|
font-size: 0.12rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.12rem;
|
|
}
|
|
}
|
|
|
|
.group_9 {
|
|
margin-top: 0.14rem;
|
|
padding: 0 0 0 0.38rem;
|
|
|
|
view {
|
|
// width: 100%;
|
|
}
|
|
|
|
.group_13 {
|
|
// margin-left: 0.035rem;
|
|
width: 100%;
|
|
|
|
.image_9 {
|
|
width: 0.3rem !important;
|
|
height: 0.3rem !important;
|
|
flex: 0 0 0.3rem !important;
|
|
border-radius: 50%;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.group_14 {
|
|
margin-left: 0.18rem;
|
|
margin-top: 0.05rem;
|
|
flex: 1 1 auto;
|
|
|
|
.author {
|
|
color: #797979;
|
|
background-color: #f2f2f2;
|
|
margin-top: 0.05rem;
|
|
font-size: 0.13rem;
|
|
line-height: 0.2rem;
|
|
margin-left: 0.13rem;
|
|
height: 0.2rem;
|
|
padding: 0 0.05rem;
|
|
border-radius: 30%;
|
|
}
|
|
|
|
.text_28 {
|
|
align-self: flex-start;
|
|
color: rgb(2, 2, 2);
|
|
font-size: 0.13rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.13rem;
|
|
}
|
|
|
|
.group_15 {
|
|
margin-top: 0.12rem;
|
|
width: 100%;
|
|
|
|
.text_29 {
|
|
color: rgb(55, 59, 72);
|
|
font-size: 0.13rem;
|
|
font-family: Adobe Heiti Std;
|
|
// line-height: 0.14rem;
|
|
width: 90%;
|
|
word-break: break-all;
|
|
}
|
|
}
|
|
|
|
.text_30 {
|
|
margin-left: 0.13rem;
|
|
margin-top: 0.045rem;
|
|
color: rgb(180, 182, 189);
|
|
font-size: 0.12rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.12rem;
|
|
}
|
|
}
|
|
}
|
|
|
|
.group_16 {
|
|
margin-left: 0.035rem;
|
|
margin-top: 0.11rem;
|
|
width: 1.09rem;
|
|
|
|
.group_17 {
|
|
margin-top: 0.075rem;
|
|
|
|
.text_31 {
|
|
align-self: flex-start;
|
|
color: rgb(2, 2, 2);
|
|
font-size: 0.13rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.1rem;
|
|
}
|
|
|
|
.group_18 {
|
|
margin-top: 0.14rem;
|
|
padding-left: 0.015rem;
|
|
|
|
.text_32 {
|
|
color: rgb(55, 59, 72);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.14rem;
|
|
}
|
|
|
|
.text_33 {
|
|
margin-top: 0.03rem;
|
|
color: rgb(180, 182, 189);
|
|
font-size: 0.12rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.12rem;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.group_19 {
|
|
margin-left: 0.05rem;
|
|
margin-top: 0.12rem;
|
|
width: 1.07rem;
|
|
|
|
.group_20 {
|
|
margin-top: 0.07rem;
|
|
|
|
.text_34 {
|
|
align-self: flex-start;
|
|
color: rgb(2, 2, 2);
|
|
font-size: 0.13rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.12rem;
|
|
}
|
|
|
|
.group_21 {
|
|
margin-top: 0.14rem;
|
|
|
|
.text_35 {
|
|
color: rgb(55, 59, 72);
|
|
font-size: 0.15rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.14rem;
|
|
}
|
|
|
|
.text_36 {
|
|
margin-left: 0.01rem;
|
|
margin-top: 0.03rem;
|
|
color: rgb(180, 182, 189);
|
|
font-size: 0.12rem;
|
|
font-family: Adobe Heiti Std;
|
|
line-height: 0.12rem;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.image {
|
|
width: 0.3rem;
|
|
height: 0.3rem;
|
|
}
|
|
}
|
|
|
|
.group_27:first-child {
|
|
margin-top: 0;
|
|
}
|
|
}
|
|
|
|
.icon-like {
|
|
width: 40rpx;
|
|
height: 40rpx;
|
|
margin-right: 10rpx;
|
|
margin-top: 6rpx;
|
|
}
|
|
|
|
.text-delete {
|
|
color: #999;
|
|
margin-top: 0.05rem;
|
|
}
|
|
}
|
|
|
|
.btn {
|
|
background-color: #fff;
|
|
position: fixed;
|
|
bottom: 0;
|
|
left: 0;
|
|
height: 0.5rem;
|
|
line-height: 0.5rem;
|
|
width: 100%;
|
|
|
|
.icon-1,
|
|
.icon-2 {
|
|
flex: 1;
|
|
text-align: center;
|
|
|
|
.image_7 {
|
|
margin-right: 0.05rem;
|
|
flex-shrink: 0;
|
|
width: 0.2rem;
|
|
height: 0.2rem;
|
|
transform: translateY(0.04rem);
|
|
}
|
|
|
|
.image_8 {
|
|
margin-right: 0.05rem;
|
|
width: 0.2rem;
|
|
height: 0.2rem;
|
|
// transform: translateY(0.04rem);
|
|
}
|
|
}
|
|
}
|
|
</style>
|