From 645eb4b97bdf8860a9e4bf6db2474a5ab9180cae Mon Sep 17 00:00:00 2001 From: 杨磊 <505174330@qq.com> Date: 星期日, 24 八月 2025 11:30:34 +0800 Subject: [PATCH] 收藏 --- src/views/bookStore/detail.vue | 103 +++++++++++++++++++++++---------------------------- 1 files changed, 46 insertions(+), 57 deletions(-) diff --git a/src/views/bookStore/detail.vue b/src/views/bookStore/detail.vue index 8f3f4dd..e012616 100644 --- a/src/views/bookStore/detail.vue +++ b/src/views/bookStore/detail.vue @@ -39,7 +39,7 @@ @click="collectBook" v-if="bookInfo.isFavourite" class="buyIcon" - src="@/assets/images/bookStore/shoucang.svg" + src="@/assets/images/xiehe/detail/Collection_fill.png" style="margin-right: 10px" /> <span @@ -52,7 +52,16 @@ <div class="collectText" @click="collectBook" v-if="bookInfo.isFavourite"> 宸叉敹钘� </div> - <div class="collectText" @click="collectBook" v-else>鏀惰棌</div> + + <div class="collectText" @click="collectBook" v-else> + <img + @click="collectBook" + class="buyIcon" + src="@/assets/images/xiehe/detail/Collection.png" + style="margin-right: 10px" + /> + 鏀惰棌 + </div> </div> </div> <div class="authorBox"> @@ -171,60 +180,6 @@ </div> </div> </div> - <el-dialog title="鑱旂郴缂栬緫" :visible.sync="contactVisible" width="30%" :lock-scroll="false"> - <div class="contactBox" v-if="bookInfo.editor"> - <div class="contacItem"> - <i class="iconfont icon-renwu-ren contacIcon"></i> - {{ bookInfo.editor.name }} - </div> - <div class="contacItem"> - <i class="iconfont icon-QQ contacIcon"></i> - {{ bookInfo.editor.qq }} - </div> - <div class="contacItem"> - <i class="iconfont icon-tongxunlu contacIcon"></i> - {{ bookInfo.editor.phone }} - </div> - <div class="contacItem"> - <i class="iconfont icon-dianhua contacIcon"></i> - {{ bookInfo.editor.telephone }} - </div> - </div> - <el-empty v-else description="鏆傛棤鏁版嵁" class="empty" :image-size="100"></el-empty> - </el-dialog> - <el-dialog title="淇℃伅鍙嶉" :visible.sync="dialogVisible" width="50%" :lock-scroll="false"> - <div class="infoDialog"> - <el-input - type="textarea" - :rows="8" - placeholder="璇︾粏鎻忚堪鎮ㄦ墍閬囧埌鐨勯棶棰橈紝鏈夊姪浜庡揩閫熺粰鎮ㄥ弽棣堬紒" - v-model="textarea" - > - </el-input> - <div class="subBtn"> - <el-button type="primary" @click="sendDiscuss">鎻愪氦</el-button> - </div> - <div class="infoList"> - <div class="infoItem" v-for="(item, index) in commentList" :key="index"> - <div class="infoImg"> - <img v-if="item.icon" class="autoImg" :src="item.icon" alt="" /> - <i v-else class="el-icon-user-solid"></i> - </div> - <div class="infoContent"> - <div class="infoTitle"> - <div class="userNameBox">{{ item.content.name }}</div> - <div class="userNameBox"> - {{ moment(item.createDate).format('YYYY-MM-DD') }} - </div> - </div> - <div class="infoText"> - {{ item.content.content }} - </div> - </div> - </div> - </div> - </div> - </el-dialog> </div> </div> @@ -263,7 +218,8 @@ </div> </div> <div v-else-if="editableTabsValue == '2'" class="catalogue"> - <el-empty description="鏆傛棤鏁版嵁" /> + <div v-if="bookInfo.catalogue" v-html="bookInfo.catalogue" class="catalogueContent"></div> + <el-empty description="鏆傛棤鏁版嵁" v-else /> </div> <div v-else-if="editableTabsValue == '6'" class="supportingResources"> <div class="resourcesBox"> @@ -334,6 +290,7 @@ import { ref, onBeforeMount, inject, reactive, onMounted, watchEffect } from 'vue' const MG = inject('MG') const config = inject('config') +const logIn = inject('logIn') import { useRouter, useRoute } from 'vue-router' import { applyBookStore } from '@/store' const route = useRoute() @@ -385,6 +342,33 @@ getBookResource() } }) + +//鏀惰棌涔︾睄 +const collectBook = () => { + if (localStorage.getItem(config.tokenKey)) { + if (bookInfo.value.isFavourite) { + MG.store + .delProductLink({ + productIds: [bookInfo.value.id], + linkType: 'FavoriteBookCity', + }) + .then(() => { + bookInfo.value.isFavourite = false + }) + } else { + let params = { + productIds: [bookInfo.value.id], + linkType: 'FavoriteBookCity', + } + MG.store.addProductLink(params).then((res) => { + bookInfo.value.isFavourite = true + }) + } + } else { + logIn() + console.log(logIn) + } +} //鐢宠璇曠敤 const applyTextBook = () => { @@ -938,4 +922,9 @@ } } } +.textbookContent, +.authorInfo { + margin-top: 20px; + line-height: 28px; +} </style> -- Gitblit v1.9.1