|
@@ -2,41 +2,52 @@
|
|
|
<view class="container" :style="'overflow:' + (showPage ? 'hidden' : 'visible')" v-if="info">
|
|
<view class="container" :style="'overflow:' + (showPage ? 'hidden' : 'visible')" v-if="info">
|
|
|
<!-- 作者信息区域 -->
|
|
<!-- 作者信息区域 -->
|
|
|
<view class="author">
|
|
<view class="author">
|
|
|
- <img mode="aspectFill" :src="info.coverImg" />
|
|
|
|
|
- <view class="author_name">{{ info.hotel_name }}</view>
|
|
|
|
|
- <view class="author_btn">关注</view>
|
|
|
|
|
|
|
+ <img mode="aspectFill" :src="info.userPhoto" @click="handleGoMyHome(info.userId)" />
|
|
|
|
|
+ <view class="author_name">{{ info.userName }}</view>
|
|
|
|
|
+ <view class="author_btn" v-if="info.isFollow !== 2" @click="handleFollow">{{ info.isFollow === 0 ? '关注' : '已关注' }}</view>
|
|
|
</view>
|
|
</view>
|
|
|
|
|
|
|
|
<!-- 轮播图区域 -->
|
|
<!-- 轮播图区域 -->
|
|
|
- <swiper indicator-color="#ccc" indicator-active-color="#096562" indicator-dots autoplay circular class="swiper">
|
|
|
|
|
- <swiper-item class="swiper_item" v-for="(item, current) in info.hotelFileInfoList" :key="item.id" @click="handleClickSwiper(info.hotelFileInfoList, current)">
|
|
|
|
|
- <img mode="aspectFill" class="img" :src="item.url" />
|
|
|
|
|
|
|
+ <swiper indicator-color="#ccc" indicator-active-color="#096562" indicator-dots autoplay circular class="swiper" v-if="info.images">
|
|
|
|
|
+ <swiper-item class="swiper_item" v-for="(item, current) in info.images" :key="current" @click="handleClickSwiper(info.images, current)">
|
|
|
|
|
+ <img mode="aspectFill" class="img" :src="item" />
|
|
|
</swiper-item>
|
|
</swiper-item>
|
|
|
</swiper>
|
|
</swiper>
|
|
|
|
|
|
|
|
|
|
+ <video
|
|
|
|
|
+ v-if="info.video"
|
|
|
|
|
+ class="swiper"
|
|
|
|
|
+ :src="info.video"
|
|
|
|
|
+ id="myVideo"
|
|
|
|
|
+ :show-fullscreen-btn="false"
|
|
|
|
|
+ :direction="0"
|
|
|
|
|
+ @fullscreenchange="fullscreenchange"
|
|
|
|
|
+ @click="handleClickVideo('myVideo')"
|
|
|
|
|
+ ></video>
|
|
|
|
|
+
|
|
|
<!-- 推文信息区域 -->
|
|
<!-- 推文信息区域 -->
|
|
|
<view class="tweet">
|
|
<view class="tweet">
|
|
|
- <view class="tweet_title">{{ info.hposition }}</view>
|
|
|
|
|
- <view class="tweet_msg">{{ info.remark }}</view>
|
|
|
|
|
- <view class="tweet_info">{{ info.openTime.slice(5, 10) }} {{ info.hotelTownshipName }}</view>
|
|
|
|
|
|
|
+ <view class="tweet_title">{{ info.title }}</view>
|
|
|
|
|
+ <view class="tweet_msg">{{ info.content }}</view>
|
|
|
|
|
+ <view class="tweet_info">{{ info.dateStr }} {{ info.townName }}</view>
|
|
|
</view>
|
|
</view>
|
|
|
|
|
|
|
|
<!-- 关联民宿区域 -->
|
|
<!-- 关联民宿区域 -->
|
|
|
<view class="and">
|
|
<view class="and">
|
|
|
<!-- 每一个关联民宿区域 -->
|
|
<!-- 每一个关联民宿区域 -->
|
|
|
- <view class="and_box" v-for="item in info.houseList.slice(0, 2)" :key="item.id">
|
|
|
|
|
- <img mode="aspectFill" :src="item.fileInfoList[0].url" />
|
|
|
|
|
|
|
+ <view class="and_box" v-for="item in info.hotels" :key="item.id" @click="goHotelDetail(item)">
|
|
|
|
|
+ <img mode="aspectFill" :src="item.coverImg" />
|
|
|
<view class="box_detail">
|
|
<view class="box_detail">
|
|
|
<view class="detail_name">
|
|
<view class="detail_name">
|
|
|
- {{ item.hName }}
|
|
|
|
|
- <img class="img" src="../../static/index/like.png" />
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="detail_leave">
|
|
|
|
|
- {{ item.hName }}
|
|
|
|
|
|
|
+ {{ item.name }}
|
|
|
|
|
+ <img class="img" :src="item.isCollect === 0 ? '../../static/index/like.png' : '../../static/index/like-active.png'" @click.stop="handleLikeHotel(item)" />
|
|
|
</view>
|
|
</view>
|
|
|
|
|
+ <view class="detail_leave" v-if="item.type === 1">银宿级</view>
|
|
|
|
|
+ <view class="detail_leave" v-if="item.type === 2">金宿级</view>
|
|
|
|
|
+ <view class="detail_leave" v-if="item.type === 3">白金级</view>
|
|
|
<view class="detail_num">
|
|
<view class="detail_num">
|
|
|
- <view class="num_rate">{{ item.number.toFixed(1) }}分</view>
|
|
|
|
|
- <view class="num_comment">{{ item.number }}条评论</view>
|
|
|
|
|
|
|
+ <view class="num_rate">{{ item.score.toFixed(1) }}分</view>
|
|
|
|
|
+ <view class="num_comment">{{ item.comment }}条评论</view>
|
|
|
<view class="num_price">
|
|
<view class="num_price">
|
|
|
¥{{ item.price }}
|
|
¥{{ item.price }}
|
|
|
<text>起</text>
|
|
<text>起</text>
|
|
@@ -50,30 +61,30 @@
|
|
|
</view>
|
|
</view>
|
|
|
|
|
|
|
|
<!-- 点赞人数区域 -->
|
|
<!-- 点赞人数区域 -->
|
|
|
- <view class="like">
|
|
|
|
|
- <uv-avatar-group :urls="info.hotelFileInfoList" keyName="url" size="30" gap="0.3" maxCount="10"></uv-avatar-group>
|
|
|
|
|
- <view class="like_text" @click="handleGoPage('/pages/likeList/likeList')">{{ info.roomNumber }}人已赞</view>
|
|
|
|
|
|
|
+ <view class="like" v-if="info.likes.length !== 0">
|
|
|
|
|
+ <uv-avatar-group mode="aspectFill" :urls="info.likes" size="30" gap="0.3" maxCount="10"></uv-avatar-group>
|
|
|
|
|
+ <view class="like_text" @click="handleGoPageLike">{{ info.likeNum }}人已赞</view>
|
|
|
</view>
|
|
</view>
|
|
|
|
|
|
|
|
<!-- 评论总条数区域 -->
|
|
<!-- 评论总条数区域 -->
|
|
|
- <view class="total">共15条评论</view>
|
|
|
|
|
|
|
+ <view class="total" v-if="info.commentNum">共{{ info.commentNum }}条评论</view>
|
|
|
|
|
|
|
|
<!-- 评论输入框区域 -->
|
|
<!-- 评论输入框区域 -->
|
|
|
<view class="input_box">
|
|
<view class="input_box">
|
|
|
- <input type="text" confirm-type="send" placeholder="爱评论的人运气都不差" @confirm="handleInput" />
|
|
|
|
|
|
|
+ <input type="text" confirm-type="send" placeholder="爱评论的人运气都不差" v-model="commentsValue" @confirm="handleInput" />
|
|
|
</view>
|
|
</view>
|
|
|
|
|
|
|
|
<!-- 评论列表区域 -->
|
|
<!-- 评论列表区域 -->
|
|
|
- <view class="comment_list">
|
|
|
|
|
|
|
+ <view class="comment_list" v-if="info.comments">
|
|
|
<!-- 每一个评论区域 -->
|
|
<!-- 每一个评论区域 -->
|
|
|
- <view class="comment_box" v-for="item in info.houseList.slice(0, 3)" :key="item.id">
|
|
|
|
|
|
|
+ <view class="comment_box" v-for="item in info.comments" :key="item.id">
|
|
|
<view class="box_left">
|
|
<view class="box_left">
|
|
|
- <img mode="aspectFill" :src="item.fileInfoList[0].url" />
|
|
|
|
|
|
|
+ <img mode="aspectFill" :src="item.image" @click="handleGoMyHome(item.userId)" />
|
|
|
</view>
|
|
</view>
|
|
|
<view class="box_right">
|
|
<view class="box_right">
|
|
|
- <view class="right_name">{{ item.hName }}</view>
|
|
|
|
|
- <view class="right_content">{{ item.hConfig }}</view>
|
|
|
|
|
- <view class="right_time">{{ item.createDate.slice(6, 11) }}</view>
|
|
|
|
|
|
|
+ <view class="right_name">{{ item.userName }}</view>
|
|
|
|
|
+ <view class="right_content">{{ item.content }}</view>
|
|
|
|
|
+ <view class="right_time">{{ item.date.slice(0, 19) }}</view>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
|
|
|
|
@@ -82,22 +93,30 @@
|
|
|
</view>
|
|
</view>
|
|
|
|
|
|
|
|
<!-- 相关推文区域 -->
|
|
<!-- 相关推文区域 -->
|
|
|
- <view class="related" v-if="info.houseList.length">
|
|
|
|
|
|
|
+ <view class="related" v-if="bindTweetList.length !== 0">
|
|
|
<view class="related_title">相关推文</view>
|
|
<view class="related_title">相关推文</view>
|
|
|
<!-- 相关推文列表区域 -->
|
|
<!-- 相关推文列表区域 -->
|
|
|
<view class="related_list">
|
|
<view class="related_list">
|
|
|
<!-- 每一个推文区域 -->
|
|
<!-- 每一个推文区域 -->
|
|
|
- <view class="related_box" v-for="item in info.houseList.slice(0, 2)" :key="item.id">
|
|
|
|
|
- <img mode="aspectFill" :src="item.fileInfoList[0].url" />
|
|
|
|
|
- <view class="box_content">{{ item.hConfig }}</view>
|
|
|
|
|
|
|
+ <view class="related_box" v-for="item in bindTweetList" :key="item.id" @click="handleGoBind(item)">
|
|
|
|
|
+ <img class="box_cover" v-if="item.image" mode="aspectFill" :src="item.image" />
|
|
|
|
|
+ <video class="box_cover" v-if="item.video" :src="item.video" :show-center-play-btn="false" :show-fullscreen-btn="false" :show-play-btn="false"></video>
|
|
|
|
|
+ <view class="box_content">{{ item.title }}</view>
|
|
|
<view class="box_info">
|
|
<view class="box_info">
|
|
|
- <img class="img" mode="aspectFill" :src="item.fileInfoList[0].url" />
|
|
|
|
|
- <view class="info_name">{{ item.hName }}</view>
|
|
|
|
|
- <img class="img2" mode="aspectFill" src="../../static/index/like.png" />
|
|
|
|
|
- <view class="info_count">{{ item.number }}</view>
|
|
|
|
|
|
|
+ <img class="img" mode="aspectFill" :src="item.userPhoto" />
|
|
|
|
|
+ <view class="info_name">{{ item.userName }}</view>
|
|
|
|
|
+ <img
|
|
|
|
|
+ class="img2"
|
|
|
|
|
+ mode="aspectFill"
|
|
|
|
|
+ :src="item.isCollect === 0 ? '../../static/index/like.png' : '../../static/index/like-active.png'"
|
|
|
|
|
+ @click.stop="handleClickLike(item)"
|
|
|
|
|
+ />
|
|
|
|
|
+ <view class="info_count">{{ item.collectNum }}</view>
|
|
|
</view>
|
|
</view>
|
|
|
<!-- 乡镇信息区域 -->
|
|
<!-- 乡镇信息区域 -->
|
|
|
- <view class="box_town">{{ item.hName }}</view>
|
|
|
|
|
|
|
+ <view class="box_town">{{ item.townName }}</view>
|
|
|
|
|
+ <!-- 视频图标 -->
|
|
|
|
|
+ <img v-if="item.video" class="box_play" src="../../static/index/video.png" />
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
@@ -106,37 +125,37 @@
|
|
|
<view class="tab">
|
|
<view class="tab">
|
|
|
<!-- 点赞 -->
|
|
<!-- 点赞 -->
|
|
|
<view class="tab_box">
|
|
<view class="tab_box">
|
|
|
- <img class="img" src="../../static/index/upvote.png" />
|
|
|
|
|
- 123
|
|
|
|
|
|
|
+ <img class="img" :src="info.isLike === 0 ? '../../static/index/upvote.png' : '../../static/index/upvote-active.png'" @click="clickBtnLike" />
|
|
|
|
|
+ {{ info.likeNum }}
|
|
|
</view>
|
|
</view>
|
|
|
<!-- 评论 -->
|
|
<!-- 评论 -->
|
|
|
<view class="tab_box" @click="handleClickComment">
|
|
<view class="tab_box" @click="handleClickComment">
|
|
|
<img class="img2" src="../../static/index/comment.png" />
|
|
<img class="img2" src="../../static/index/comment.png" />
|
|
|
- 123
|
|
|
|
|
|
|
+ {{ info.commentNum }}
|
|
|
</view>
|
|
</view>
|
|
|
<!-- 收藏 -->
|
|
<!-- 收藏 -->
|
|
|
<view class="tab_box">
|
|
<view class="tab_box">
|
|
|
- <img class="img" src="../../static/index/like.png" />
|
|
|
|
|
- 123
|
|
|
|
|
|
|
+ <img class="img" :src="info.isCollect === 0 ? '../../static/index/like.png' : '../../static/index/like-active.png'" @click="handleClickLike(info)" />
|
|
|
|
|
+ {{ info.collectNum }}
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
|
|
|
|
|
<!-- 点击评论弹窗区域 -->
|
|
<!-- 点击评论弹窗区域 -->
|
|
|
- <uv-popup ref="popup" bgColor="none" :safeAreaInsetBottom="false">
|
|
|
|
|
- <view class="body_pop">
|
|
|
|
|
|
|
+ <uv-popup ref="popup" bgColor="none" :safeAreaInsetBottom="false" :closeOnClickOverlay="false">
|
|
|
|
|
+ <view class="body_pop" v-if="commentList.length">
|
|
|
<!-- 评论总数区域 -->
|
|
<!-- 评论总数区域 -->
|
|
|
<view class="pop_title">
|
|
<view class="pop_title">
|
|
|
- 共25条评论
|
|
|
|
|
|
|
+ 共{{ totalComment }}条评论
|
|
|
<img class="pop_icon" src="../../static/index/close3.png" @click="handleClosePop" />
|
|
<img class="pop_icon" src="../../static/index/close3.png" @click="handleClosePop" />
|
|
|
</view>
|
|
</view>
|
|
|
|
|
|
|
|
<!-- 评论列表区域 -->
|
|
<!-- 评论列表区域 -->
|
|
|
- <view class="pop_list" v-if="commentList.length">
|
|
|
|
|
|
|
+ <scroll-view class="pop_list" scroll-y @scrolltolower="handleTolowerComment">
|
|
|
<!-- 每一条评论区域 -->
|
|
<!-- 每一条评论区域 -->
|
|
|
<view class="pop_item" v-for="item in commentList" :key="item.id">
|
|
<view class="pop_item" v-for="item in commentList" :key="item.id">
|
|
|
<!-- 用户区域 -->
|
|
<!-- 用户区域 -->
|
|
|
<view class="item_user" @click="handleComment(item)">
|
|
<view class="item_user" @click="handleComment(item)">
|
|
|
- <img mode="aspectFill" :src="item.headPhoto" />
|
|
|
|
|
|
|
+ <img mode="aspectFill" :src="item.image" @click.stop="handleGoMyHome(item.userId)" />
|
|
|
<view class="user_info">
|
|
<view class="user_info">
|
|
|
{{ item.userName }}
|
|
{{ item.userName }}
|
|
|
</view>
|
|
</view>
|
|
@@ -147,28 +166,28 @@
|
|
|
{{ item.content }}
|
|
{{ item.content }}
|
|
|
</view>
|
|
</view>
|
|
|
<view class="content_bottom">
|
|
<view class="content_bottom">
|
|
|
- {{ item.dateTime }}
|
|
|
|
|
|
|
+ {{ item.date.slice(0, 19) }}
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
|
|
|
|
|
<!-- 二级评论区域 -->
|
|
<!-- 二级评论区域 -->
|
|
|
<view class="item_child">
|
|
<view class="item_child">
|
|
|
- <CommentChild v-if="item.commentVoList" :list="item.commentVoList" :commentParentId="info.id" />
|
|
|
|
|
|
|
+ <CommentChild3 v-if="item.childrens" :list="item.childrens" :commentParentId="tweetId" />
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
- </view>
|
|
|
|
|
|
|
+ </scroll-view>
|
|
|
</view>
|
|
</view>
|
|
|
|
|
|
|
|
<!-- 评论输入框区域 -->
|
|
<!-- 评论输入框区域 -->
|
|
|
- <view class="body_input">
|
|
|
|
|
|
|
+ <view class="body_input" v-if="commentList.length">
|
|
|
<view class="input_box">
|
|
<view class="input_box">
|
|
|
- <input type="text" placeholder="说点什么呢~" @confirm="handleInputPop" />
|
|
|
|
|
|
|
+ <input type="text" confirm-type="send" placeholder="说点什么呢~" v-model="popInputValue" @confirm="handleInputPop" />
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
</uv-popup>
|
|
</uv-popup>
|
|
|
|
|
|
|
|
<!-- 点击关联民宿弹窗区域 -->
|
|
<!-- 点击关联民宿弹窗区域 -->
|
|
|
- <uv-popup ref="popup_bind" bgColor="none" :safeAreaInsetBottom="false">
|
|
|
|
|
|
|
+ <uv-popup ref="popup_bind" bgColor="none" :safeAreaInsetBottom="false" :closeOnClickOverlay="false">
|
|
|
<view class="body_pop">
|
|
<view class="body_pop">
|
|
|
<!-- 评论总数区域 -->
|
|
<!-- 评论总数区域 -->
|
|
|
<view class="pop_title">
|
|
<view class="pop_title">
|
|
@@ -177,21 +196,25 @@
|
|
|
</view>
|
|
</view>
|
|
|
|
|
|
|
|
<!-- 关联民宿列表区域 -->
|
|
<!-- 关联民宿列表区域 -->
|
|
|
- <view class="pop_list" v-if="bindList.length">
|
|
|
|
|
|
|
+ <scroll-view class="pop_list" v-if="bindList.length" scroll-y @scrolltolower="handleTolower">
|
|
|
<!-- 每一个民宿区域 -->
|
|
<!-- 每一个民宿区域 -->
|
|
|
- <view class="pop_item_bind" v-for="item in bindList" :key="item.id">
|
|
|
|
|
- <img mode="aspectFill" :src="item.url" />
|
|
|
|
|
|
|
+ <view class="pop_item_bind" v-for="item in bindList" :key="item.id" @click="goHotelDetail(item)">
|
|
|
|
|
+ <img mode="aspectFill" :src="item.coverImg" />
|
|
|
<view class="box_detail">
|
|
<view class="box_detail">
|
|
|
<view class="detail_name">
|
|
<view class="detail_name">
|
|
|
- {{ item.hName }}
|
|
|
|
|
- <img class="img" src="../../static/index/like.png" />
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="detail_leave">
|
|
|
|
|
- {{ item.hName }}
|
|
|
|
|
|
|
+ {{ item.name }}
|
|
|
|
|
+ <img
|
|
|
|
|
+ class="img"
|
|
|
|
|
+ :src="item.isCollect === 0 ? '../../static/index/like.png' : '../../static/index/like-active.png'"
|
|
|
|
|
+ @click.stop="handleLikeHotel(item)"
|
|
|
|
|
+ />
|
|
|
</view>
|
|
</view>
|
|
|
|
|
+ <view class="detail_leave" v-if="item.type === 1">银宿级</view>
|
|
|
|
|
+ <view class="detail_leave" v-if="item.type === 2">金宿级</view>
|
|
|
|
|
+ <view class="detail_leave" v-if="item.type === 3">白金级</view>
|
|
|
<view class="detail_num">
|
|
<view class="detail_num">
|
|
|
- <view class="num_rate">{{ item.number.toFixed(1) }}分</view>
|
|
|
|
|
- <view class="num_comment">{{ item.number }}条评论</view>
|
|
|
|
|
|
|
+ <view class="num_rate">{{ item.score.toFixed(1) }}分</view>
|
|
|
|
|
+ <view class="num_comment">{{ item.comment }}条评论</view>
|
|
|
<view class="num_price">
|
|
<view class="num_price">
|
|
|
¥{{ item.price }}
|
|
¥{{ item.price }}
|
|
|
<text>起</text>
|
|
<text>起</text>
|
|
@@ -199,150 +222,225 @@
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
</view>
|
|
</view>
|
|
|
- </view>
|
|
|
|
|
|
|
+ </scroll-view>
|
|
|
</view>
|
|
</view>
|
|
|
</uv-popup>
|
|
</uv-popup>
|
|
|
</view>
|
|
</view>
|
|
|
</template>
|
|
</template>
|
|
|
|
|
|
|
|
<script>
|
|
<script>
|
|
|
-import CommentChild from '@/components/commentChild2.vue'
|
|
|
|
|
|
|
+import CommentChild3 from '@/components/commentChild3.vue'
|
|
|
export default {
|
|
export default {
|
|
|
- components: { CommentChild },
|
|
|
|
|
|
|
+ components: { CommentChild3 },
|
|
|
data() {
|
|
data() {
|
|
|
return {
|
|
return {
|
|
|
// 滚动穿透控制
|
|
// 滚动穿透控制
|
|
|
showPage: false,
|
|
showPage: false,
|
|
|
- hotelId: '',
|
|
|
|
|
- startTime: '',
|
|
|
|
|
- endTime: '',
|
|
|
|
|
|
|
+ // 推文id
|
|
|
|
|
+ tweetId: '',
|
|
|
|
|
+ // 乡镇id
|
|
|
|
|
+ townId: '',
|
|
|
|
|
+ // 用户id
|
|
|
|
|
+ userId: '',
|
|
|
|
|
+ // 推文信息
|
|
|
info: null,
|
|
info: null,
|
|
|
- commentList: [
|
|
|
|
|
- {
|
|
|
|
|
- id: 1,
|
|
|
|
|
- headPhoto: 'https://chtech.ncjti.edu.cn/hotelReservation/fileload/download/1374205869tmp_ec40ba855cc6003b2a47877a654dceaf9fc74230a8e9cf25.jpg',
|
|
|
|
|
- userName: '张三',
|
|
|
|
|
- dateTime: '2023-09-22 16:54:38',
|
|
|
|
|
- content: '策划斯哈斯是回家哦啊好啦干哈会离开是尴尬尬策划斯哈斯是回家哦啊好啦干哈会离开是尴尬尬策划斯哈斯是回家哦啊好啦干哈会离开是尴尬尬',
|
|
|
|
|
- commentVoList: [
|
|
|
|
|
- {
|
|
|
|
|
- id: 11,
|
|
|
|
|
- headPhoto: 'https://chtech.ncjti.edu.cn/hotelReservation/fileload/download/1374205869tmp_ec40ba855cc6003b2a47877a654dceaf9fc74230a8e9cf25.jpg',
|
|
|
|
|
- userName: '小王',
|
|
|
|
|
- commentName: '老六',
|
|
|
|
|
- dateTime: '2023-09-22 16:54:38',
|
|
|
|
|
- content: '策划斯哈斯是回家哦啊好啦干哈会离开是尴尬尬策划斯哈斯是回家哦啊好啦干哈会离开是尴尬尬策划斯哈斯是回家哦啊好啦干哈会离开是尴尬尬',
|
|
|
|
|
- commentVoList: [
|
|
|
|
|
- {
|
|
|
|
|
- id: 111,
|
|
|
|
|
- headPhoto: 'https://chtech.ncjti.edu.cn/hotelReservation/fileload/download/1374205869tmp_ec40ba855cc6003b2a47877a654dceaf9fc74230a8e9cf25.jpg',
|
|
|
|
|
- userName: '小王',
|
|
|
|
|
- commentName: '老六',
|
|
|
|
|
- dateTime: '2023-09-22 16:54:38',
|
|
|
|
|
- content: '策划斯哈斯是回家哦啊好啦干哈会离开是尴尬尬策划斯哈斯是回家哦啊好啦干哈会离开是尴尬尬策划斯哈斯是回家哦啊好啦干哈会离开是尴尬尬',
|
|
|
|
|
- commentVoList: []
|
|
|
|
|
- }
|
|
|
|
|
- ]
|
|
|
|
|
- }
|
|
|
|
|
- ]
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- id: 2,
|
|
|
|
|
- headPhoto: 'https://chtech.ncjti.edu.cn/hotelReservation/fileload/download/1374205869tmp_ec40ba855cc6003b2a47877a654dceaf9fc74230a8e9cf25.jpg',
|
|
|
|
|
- userName: '李四',
|
|
|
|
|
- dateTime: '2023-09-22 16:54:38',
|
|
|
|
|
- content: '呜呜呜呜呜呜吾问无为谓策划斯哈斯是回家哦啊好啦干哈会离开是尴尬尬',
|
|
|
|
|
- commentVoList: []
|
|
|
|
|
- }
|
|
|
|
|
- ],
|
|
|
|
|
- bindList: [
|
|
|
|
|
- {
|
|
|
|
|
- id: 1,
|
|
|
|
|
- url: 'https://chtech.ncjti.edu.cn/hotelReservation/fileload/download/14479079250812_2.jpg',
|
|
|
|
|
- hName: '开心',
|
|
|
|
|
- number: 5,
|
|
|
|
|
- price: 166
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- id: 2,
|
|
|
|
|
- url: 'https://chtech.ncjti.edu.cn/hotelReservation/fileload/download/14479079250812_2.jpg',
|
|
|
|
|
- hName: '健康',
|
|
|
|
|
- number: 6,
|
|
|
|
|
- price: 186
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- id: 3,
|
|
|
|
|
- url: 'https://chtech.ncjti.edu.cn/hotelReservation/fileload/download/14479079250812_2.jpg',
|
|
|
|
|
- hName: '幸福',
|
|
|
|
|
- number: 9,
|
|
|
|
|
- price: 126
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- id: 4,
|
|
|
|
|
- url: 'https://chtech.ncjti.edu.cn/hotelReservation/fileload/download/14479079250812_2.jpg',
|
|
|
|
|
- hName: '开心',
|
|
|
|
|
- number: 5,
|
|
|
|
|
- price: 166
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- id: 5,
|
|
|
|
|
- url: 'https://chtech.ncjti.edu.cn/hotelReservation/fileload/download/14479079250812_2.jpg',
|
|
|
|
|
- hName: '健康',
|
|
|
|
|
- number: 6,
|
|
|
|
|
- price: 186
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- id: 6,
|
|
|
|
|
- url: 'https://chtech.ncjti.edu.cn/hotelReservation/fileload/download/14479079250812_2.jpg',
|
|
|
|
|
- hName: '幸福',
|
|
|
|
|
- number: 9,
|
|
|
|
|
- price: 126
|
|
|
|
|
- }
|
|
|
|
|
- ]
|
|
|
|
|
|
|
+ // 相关推文列表数组
|
|
|
|
|
+ bindTweetList: [],
|
|
|
|
|
+ // 弹窗评论列表当前页
|
|
|
|
|
+ pageComment: 1,
|
|
|
|
|
+ // 弹窗评论列表每页多少条
|
|
|
|
|
+ rowsComment: 10,
|
|
|
|
|
+ // 弹窗评论列表总条数
|
|
|
|
|
+ totalComment: null,
|
|
|
|
|
+ // 弹窗评论列表
|
|
|
|
|
+ commentList: [],
|
|
|
|
|
+ // 弹窗关联民宿列表
|
|
|
|
|
+ bindList: [],
|
|
|
|
|
+ // 弹窗关联民宿当前页
|
|
|
|
|
+ pageBind: 1,
|
|
|
|
|
+ // 弹窗关联民宿每页多少条
|
|
|
|
|
+ rowsBind: 10,
|
|
|
|
|
+ // 弹窗关联民宿总条数
|
|
|
|
|
+ totalBind: null,
|
|
|
|
|
+ // 一级评论框绑定数值
|
|
|
|
|
+ commentsValue: '',
|
|
|
|
|
+ // 评论弹窗评论框绑定数值
|
|
|
|
|
+ popInputValue: '',
|
|
|
|
|
+ // 相关推文当前页
|
|
|
|
|
+ pageTweet: 1,
|
|
|
|
|
+ // 相关推文每页多少条
|
|
|
|
|
+ rowsTweet: 10,
|
|
|
|
|
+ // 相关推文总条数
|
|
|
|
|
+ totalTweet: null,
|
|
|
|
|
+ // video 上下文 videoContext 对象
|
|
|
|
|
+ videoContext: null,
|
|
|
|
|
+ // 是否是全屏状态
|
|
|
|
|
+ isFullScreen: false
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
onLoad(options) {
|
|
onLoad(options) {
|
|
|
- this.hotelId = options.id
|
|
|
|
|
- this.getTimes()
|
|
|
|
|
- this.getHotelInfo()
|
|
|
|
|
|
|
+ this.userId = uni.getStorageSync('userInfo').id
|
|
|
|
|
+ this.tweetId = options.id
|
|
|
|
|
+ this.townId = options.townId
|
|
|
|
|
+ this.getTweetInfo()
|
|
|
|
|
+ this.getBindTweet()
|
|
|
|
|
+ uni.$on('getReset', this.getReset)
|
|
|
|
|
+ },
|
|
|
|
|
+ onReachBottom() {
|
|
|
|
|
+ if (this.bindTweetList.length < this.totalTweet) {
|
|
|
|
|
+ this.pageTweet++
|
|
|
|
|
+ this.getBindTweet()
|
|
|
|
|
+ } else {
|
|
|
|
|
+ uni.showToast({
|
|
|
|
|
+ title: '没有更多数据了',
|
|
|
|
|
+ icon: 'none'
|
|
|
|
|
+ })
|
|
|
|
|
+ }
|
|
|
},
|
|
},
|
|
|
methods: {
|
|
methods: {
|
|
|
- // 获取民宿信息
|
|
|
|
|
- async getHotelInfo(id) {
|
|
|
|
|
|
|
+ // 获取推文详细信息
|
|
|
|
|
+ async getTweetInfo(id) {
|
|
|
|
|
+ const res = await this.$myRequest({
|
|
|
|
|
+ url: '/mhotel/articlequeryDetail.action',
|
|
|
|
|
+ data: {
|
|
|
|
|
+ id: id ? id : this.tweetId,
|
|
|
|
|
+ userId: this.userId
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ // console.log(res)
|
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
|
+ this.info = res.data
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ // 获取相关推文数组
|
|
|
|
|
+ async getBindTweet() {
|
|
|
|
|
+ const res = await this.$myRequest({
|
|
|
|
|
+ url: '/mhotel/articlerelatedTweets.action',
|
|
|
|
|
+ data: {
|
|
|
|
|
+ id: this.tweetId,
|
|
|
|
|
+ townId: this.townId,
|
|
|
|
|
+ userId: this.userId,
|
|
|
|
|
+ page: this.pageTweet,
|
|
|
|
|
+ rows: this.rowsTweet
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ // console.log(res)
|
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
|
+ this.bindTweetList = res.data.pageList
|
|
|
|
|
+ this.totalTweet = res.data.total
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ // 关注或者取消关注请求
|
|
|
|
|
+ async handleFollow() {
|
|
|
const res = await this.$myRequest({
|
|
const res = await this.$myRequest({
|
|
|
- url: '/mhotel/ahpgetHouseByHotelId.action',
|
|
|
|
|
|
|
+ url: '/mhotel/articlefollowAuthor.action',
|
|
|
data: {
|
|
data: {
|
|
|
- hotelId: id ? id : this.hotelId,
|
|
|
|
|
- userId: uni.getStorageSync('userInfo').id,
|
|
|
|
|
- queryStartTime: this.startTime,
|
|
|
|
|
- queryEndTime: this.endTime
|
|
|
|
|
|
|
+ authorId: this.info.userId,
|
|
|
|
|
+ userId: this.userId
|
|
|
}
|
|
}
|
|
|
})
|
|
})
|
|
|
// console.log(res)
|
|
// console.log(res)
|
|
|
if (res.code === 200) {
|
|
if (res.code === 200) {
|
|
|
- this.info = res.data.data
|
|
|
|
|
|
|
+ this.info.isFollow === 0 ? (this.info.isFollow = 1) : (this.info.isFollow = 0)
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
|
|
+ // 点击关联民宿爱心图标回调
|
|
|
|
|
+ async handleLikeHotel(item) {
|
|
|
|
|
+ const res = await this.$myRequest({
|
|
|
|
|
+ url: item.isCollect === 0 ? '/mhotel/ahpcollectHotel.action' : '/mhotel/ahpdelCollectHotel.action',
|
|
|
|
|
+ data: {
|
|
|
|
|
+ hotelId: item.id,
|
|
|
|
|
+ userId: this.userId
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ // console.log(res)
|
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
|
+ item.isCollect === 0 ? (item.isCollect = 1) : (item.isCollect = 0)
|
|
|
|
|
+ this.getTweetInfo()
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ // 点击民宿前往民宿详情回调
|
|
|
|
|
+ goHotelDetail(item) {
|
|
|
|
|
+ this.showPage = false
|
|
|
|
|
+ this.$refs.popup_bind.close()
|
|
|
|
|
+ uni.navigateTo({
|
|
|
|
|
+ url: `/pages/detail/detail?id=${item.id}`
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
// 点击轮播图图片回调
|
|
// 点击轮播图图片回调
|
|
|
handleClickSwiper(urls, current) {
|
|
handleClickSwiper(urls, current) {
|
|
|
- const temList = urls.map((ele) => ele.url)
|
|
|
|
|
uni.previewImage({
|
|
uni.previewImage({
|
|
|
- urls: temList,
|
|
|
|
|
|
|
+ urls,
|
|
|
current
|
|
current
|
|
|
})
|
|
})
|
|
|
},
|
|
},
|
|
|
- handleInput(e) {
|
|
|
|
|
- console.log(e)
|
|
|
|
|
- console.log(999)
|
|
|
|
|
|
|
+ // 一级评论框确定输入回调
|
|
|
|
|
+ async handleInput(e) {
|
|
|
|
|
+ const res = await this.$myRequest({
|
|
|
|
|
+ url: '/mhotel/articlecommentArticle.action',
|
|
|
|
|
+ method: 'post',
|
|
|
|
|
+ data: {
|
|
|
|
|
+ articleId: this.tweetId,
|
|
|
|
|
+ parentId: 0,
|
|
|
|
|
+ userId: this.userId,
|
|
|
|
|
+ content: e.detail.value
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ // console.log(res)
|
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
|
+ this.commentsValue = ''
|
|
|
|
|
+ this.getTweetInfo()
|
|
|
|
|
+ }
|
|
|
},
|
|
},
|
|
|
// 评论弹窗输入框回调
|
|
// 评论弹窗输入框回调
|
|
|
- handleInputPop(e) {
|
|
|
|
|
- console.log(e)
|
|
|
|
|
|
|
+ async handleInputPop(e) {
|
|
|
|
|
+ const res = await this.$myRequest({
|
|
|
|
|
+ url: '/mhotel/articlecommentArticle.action',
|
|
|
|
|
+ method: 'post',
|
|
|
|
|
+ data: {
|
|
|
|
|
+ articleId: this.tweetId,
|
|
|
|
|
+ parentId: 0,
|
|
|
|
|
+ userId: this.userId,
|
|
|
|
|
+ content: e.detail.value
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ // console.log(res)
|
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
|
+ this.popInputValue = ''
|
|
|
|
|
+ this.commentList = []
|
|
|
|
|
+ this.pageComment = 1
|
|
|
|
|
+ this.handleClickCommentReq()
|
|
|
|
|
+ this.getTweetInfo()
|
|
|
|
|
+ }
|
|
|
},
|
|
},
|
|
|
// 点击底部tab评论按钮回调
|
|
// 点击底部tab评论按钮回调
|
|
|
handleClickComment() {
|
|
handleClickComment() {
|
|
|
- this.showPage = true
|
|
|
|
|
- this.$refs.popup.open('bottom')
|
|
|
|
|
|
|
+ if (this.info.comments) {
|
|
|
|
|
+ this.commentList = []
|
|
|
|
|
+ this.showPage = true
|
|
|
|
|
+ this.$refs.popup.open('bottom')
|
|
|
|
|
+ this.handleClickCommentReq()
|
|
|
|
|
+ } else {
|
|
|
|
|
+ uni.showToast({
|
|
|
|
|
+ title: '暂无评论',
|
|
|
|
|
+ icon: 'none'
|
|
|
|
|
+ })
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ async handleClickCommentReq() {
|
|
|
|
|
+ const res = await this.$myRequest({
|
|
|
|
|
+ url: '/mhotel/articlequeryCommentList.action',
|
|
|
|
|
+ data: {
|
|
|
|
|
+ id: this.tweetId,
|
|
|
|
|
+ page: this.pageComment,
|
|
|
|
|
+ rows: this.rowsComment
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ // console.log(res)
|
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
|
+ this.commentList = [...this.commentList, ...res.data.pageList]
|
|
|
|
|
+ this.totalComment = res.data.total
|
|
|
|
|
+ }
|
|
|
},
|
|
},
|
|
|
// 点击评论弹窗关闭图标回调
|
|
// 点击评论弹窗关闭图标回调
|
|
|
handleClosePop() {
|
|
handleClosePop() {
|
|
@@ -351,30 +449,155 @@ export default {
|
|
|
},
|
|
},
|
|
|
// 点击关联民宿查看全部按钮回调
|
|
// 点击关联民宿查看全部按钮回调
|
|
|
handleClickALL() {
|
|
handleClickALL() {
|
|
|
|
|
+ this.bindList = []
|
|
|
this.showPage = true
|
|
this.showPage = true
|
|
|
this.$refs.popup_bind.open('bottom')
|
|
this.$refs.popup_bind.open('bottom')
|
|
|
|
|
+ this.handleClickALLReq()
|
|
|
|
|
+ },
|
|
|
|
|
+ async handleClickALLReq() {
|
|
|
|
|
+ const res = await this.$myRequest({
|
|
|
|
|
+ url: '/mhotel/articlequeryHotelList.action',
|
|
|
|
|
+ data: {
|
|
|
|
|
+ id: this.tweetId,
|
|
|
|
|
+ userId: this.userId,
|
|
|
|
|
+ page: this.pageBind,
|
|
|
|
|
+ rows: this.rowsBind
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ // console.log(res)
|
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
|
+ this.bindList = [...this.bindList, ...res.data.pageList]
|
|
|
|
|
+ this.totalBind = res.data.total
|
|
|
|
|
+ }
|
|
|
},
|
|
},
|
|
|
// 点击关联民宿弹窗关闭图标回调
|
|
// 点击关联民宿弹窗关闭图标回调
|
|
|
handleClosePopBind() {
|
|
handleClosePopBind() {
|
|
|
this.showPage = false
|
|
this.showPage = false
|
|
|
this.$refs.popup_bind.close()
|
|
this.$refs.popup_bind.close()
|
|
|
},
|
|
},
|
|
|
- handleGoPage(url) {
|
|
|
|
|
|
|
+ handleGoPageLike() {
|
|
|
uni.navigateTo({
|
|
uni.navigateTo({
|
|
|
- url
|
|
|
|
|
|
|
+ url: `/pages/likeList/likeList?id=${this.info.id}`
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
|
|
+ // 相关推文点击爱心回调
|
|
|
|
|
+ async handleClickLike(item) {
|
|
|
|
|
+ const res = await this.$myRequest({
|
|
|
|
|
+ url: '/mhotel/articlecollectArticle.action',
|
|
|
|
|
+ data: {
|
|
|
|
|
+ id: item.id,
|
|
|
|
|
+ userId: this.userId
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ // console.log(res)
|
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
|
+ item.isCollect === 1 ? ((item.isCollect = 0), (item.collectNum -= 1)) : ((item.isCollect = 1), (item.collectNum += 1))
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ // 点击底部点赞按钮回调
|
|
|
|
|
+ async clickBtnLike() {
|
|
|
|
|
+ const res = await this.$myRequest({
|
|
|
|
|
+ url: '/mhotel/articlelikeArticle.action',
|
|
|
|
|
+ data: {
|
|
|
|
|
+ id: this.tweetId,
|
|
|
|
|
+ userId: this.userId
|
|
|
|
|
+ }
|
|
|
})
|
|
})
|
|
|
|
|
+ // console.log(res)
|
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
|
+ this.getTweetInfo()
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ handleGoBind(item) {
|
|
|
|
|
+ this.tweetId = item.id
|
|
|
|
|
+ this.townId = item.townId
|
|
|
|
|
+ this.bindTweetList = []
|
|
|
|
|
+ this.info = null
|
|
|
|
|
+ this.getTweetInfo()
|
|
|
|
|
+ this.getBindTweet()
|
|
|
},
|
|
},
|
|
|
- handleComment() {},
|
|
|
|
|
- // 获取今明两天的日期 YYYY-MM-DD
|
|
|
|
|
- getTimes() {
|
|
|
|
|
- // 今天
|
|
|
|
|
- let today = new Date()
|
|
|
|
|
- // 明天
|
|
|
|
|
- let tomorrow = new Date(today.getTime() + 24 * 60 * 60 * 1000)
|
|
|
|
|
- let late = new Date(today.getTime() + 24 * 60 * 60 * 1000 * 14)
|
|
|
|
|
-
|
|
|
|
|
- this.startTime = `${today.getFullYear()}-${(today.getMonth() + 1).toString().padStart(2, 0)}-${today.getDate().toString().padStart(2, 0)}`
|
|
|
|
|
- this.endTime = `${tomorrow.getFullYear()}-${(tomorrow.getMonth() + 1).toString().padStart(2, 0)}-${tomorrow.getDate().toString().padStart(2, 0)}`
|
|
|
|
|
|
|
+ handleComment(item) {
|
|
|
|
|
+ uni.showModal({
|
|
|
|
|
+ title: '请输入评论',
|
|
|
|
|
+ editable: true,
|
|
|
|
|
+ success: async (res) => {
|
|
|
|
|
+ if (res.confirm) {
|
|
|
|
|
+ const result = res.content
|
|
|
|
|
+ if (!res.content) {
|
|
|
|
|
+ uni.showToast({
|
|
|
|
|
+ title: '评论内容不能为空',
|
|
|
|
|
+ icon: 'none',
|
|
|
|
|
+ mask: true
|
|
|
|
|
+ })
|
|
|
|
|
+ setTimeout(() => {
|
|
|
|
|
+ this.handleComment()
|
|
|
|
|
+ }, 1500)
|
|
|
|
|
+ } else {
|
|
|
|
|
+ const res = await this.$myRequest({
|
|
|
|
|
+ url: '/mhotel/articlecommentArticle.action',
|
|
|
|
|
+ method: 'post',
|
|
|
|
|
+ data: {
|
|
|
|
|
+ articleId: this.tweetId,
|
|
|
|
|
+ parentId: item.id,
|
|
|
|
|
+ userId: this.userId,
|
|
|
|
|
+ content: result
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ // console.log(res);
|
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
|
+ this.getReset()
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
|
|
+ getReset() {
|
|
|
|
|
+ this.commentList = []
|
|
|
|
|
+ this.pageComment = 1
|
|
|
|
|
+ this.handleClickCommentReq()
|
|
|
|
|
+ },
|
|
|
|
|
+ handleTolower() {
|
|
|
|
|
+ if (this.bindList.length < this.totalBind) {
|
|
|
|
|
+ this.pageBind++
|
|
|
|
|
+ this.handleClickALLReq()
|
|
|
|
|
+ } else {
|
|
|
|
|
+ uni.showToast({
|
|
|
|
|
+ title: '没有更多数据了',
|
|
|
|
|
+ icon: 'none'
|
|
|
|
|
+ })
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ handleTolowerComment() {
|
|
|
|
|
+ if (this.commentList.length < this.totalComment) {
|
|
|
|
|
+ this.pageComment++
|
|
|
|
|
+ this.handleClickCommentReq()
|
|
|
|
|
+ } else {
|
|
|
|
|
+ uni.showToast({
|
|
|
|
|
+ title: '没有更多数据了',
|
|
|
|
|
+ icon: 'none'
|
|
|
|
|
+ })
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ // 进入全屏和退出全屏时触发的回调
|
|
|
|
|
+ fullscreenchange(e) {
|
|
|
|
|
+ this.isFullScreen = e.detail.fullScreen
|
|
|
|
|
+ },
|
|
|
|
|
+ // 点击视频控件时触发的回调
|
|
|
|
|
+ handleClickVideo(id) {
|
|
|
|
|
+ this.videoContext = uni.createVideoContext(id)
|
|
|
|
|
+ if (this.isFullScreen) {
|
|
|
|
|
+ this.videoContext.pause()
|
|
|
|
|
+ this.videoContext.exitFullScreen()
|
|
|
|
|
+ } else {
|
|
|
|
|
+ this.videoContext.requestFullScreen()
|
|
|
|
|
+ this.videoContext.play()
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ handleGoMyHome(userId) {
|
|
|
|
|
+ uni.navigateTo({
|
|
|
|
|
+ url: `/pages/myHome/myHome?userId=${userId}`
|
|
|
|
|
+ })
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -382,6 +605,7 @@ export default {
|
|
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
<style lang="scss" scoped>
|
|
|
.container {
|
|
.container {
|
|
|
|
|
+ padding-bottom: 130rpx;
|
|
|
min-height: 100vh;
|
|
min-height: 100vh;
|
|
|
background-color: #fff;
|
|
background-color: #fff;
|
|
|
|
|
|
|
@@ -418,6 +642,7 @@ export default {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
.swiper {
|
|
.swiper {
|
|
|
|
|
+ width: 100%;
|
|
|
height: 495rpx;
|
|
height: 495rpx;
|
|
|
|
|
|
|
|
.swiper_item {
|
|
.swiper_item {
|
|
@@ -567,7 +792,7 @@ export default {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
.input_box {
|
|
.input_box {
|
|
|
- margin: auto;
|
|
|
|
|
|
|
+ margin: 10rpx auto 0;
|
|
|
width: 710rpx;
|
|
width: 710rpx;
|
|
|
height: 66rpx;
|
|
height: 66rpx;
|
|
|
font-size: 24rpx;
|
|
font-size: 24rpx;
|
|
@@ -635,7 +860,6 @@ export default {
|
|
|
|
|
|
|
|
.related {
|
|
.related {
|
|
|
margin: auto;
|
|
margin: auto;
|
|
|
- padding-bottom: 130rpx;
|
|
|
|
|
width: 710rpx;
|
|
width: 710rpx;
|
|
|
|
|
|
|
|
.related_title {
|
|
.related_title {
|
|
@@ -654,7 +878,7 @@ export default {
|
|
|
width: 335rpx;
|
|
width: 335rpx;
|
|
|
background-color: #f7f7f7;
|
|
background-color: #f7f7f7;
|
|
|
|
|
|
|
|
- img {
|
|
|
|
|
|
|
+ .box_cover {
|
|
|
width: 335rpx;
|
|
width: 335rpx;
|
|
|
height: 463rpx;
|
|
height: 463rpx;
|
|
|
border-radius: 10rpx 10rpx 0 0;
|
|
border-radius: 10rpx 10rpx 0 0;
|
|
@@ -713,6 +937,14 @@ export default {
|
|
|
border-radius: 42rpx;
|
|
border-radius: 42rpx;
|
|
|
background-color: rgba(0, 0, 0, 0.3);
|
|
background-color: rgba(0, 0, 0, 0.3);
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ .box_play {
|
|
|
|
|
+ position: absolute;
|
|
|
|
|
+ top: 20rpx;
|
|
|
|
|
+ right: 20rpx;
|
|
|
|
|
+ width: 50rpx;
|
|
|
|
|
+ height: 50rpx;
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -752,10 +984,9 @@ export default {
|
|
|
|
|
|
|
|
.body_pop {
|
|
.body_pop {
|
|
|
position: relative;
|
|
position: relative;
|
|
|
- max-height: 955rpx;
|
|
|
|
|
|
|
+ height: 955rpx;
|
|
|
border-radius: 22rpx 22rpx 0 0;
|
|
border-radius: 22rpx 22rpx 0 0;
|
|
|
background-color: #fff;
|
|
background-color: #fff;
|
|
|
- overflow-y: auto;
|
|
|
|
|
|
|
|
|
|
.pop_title {
|
|
.pop_title {
|
|
|
position: fixed;
|
|
position: fixed;
|
|
@@ -779,7 +1010,9 @@ export default {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
.pop_list {
|
|
.pop_list {
|
|
|
|
|
+ box-sizing: border-box;
|
|
|
padding: 110rpx 20rpx 30rpx;
|
|
padding: 110rpx 20rpx 30rpx;
|
|
|
|
|
+ height: 955rpx;
|
|
|
|
|
|
|
|
.pop_item {
|
|
.pop_item {
|
|
|
margin-bottom: 10rpx;
|
|
margin-bottom: 10rpx;
|