xy 1 rok temu
rodzic
commit
f176b9b426

+ 19 - 5
xs-app/components/read/settingMenu.vue

@@ -3,7 +3,7 @@
 		<uni-popup  @touchstart="maskStart" @touchmove="maskTouch" :animation="false" mask-background-color="rgba(0,0,0,0)" ref="menu"  :background-color="db_color"  @change="change">
 			<view v-if="showSettingFontSizeMode==false" class="selects-box">
 				<view @click="emit('clickPreChapter')" :style="{'color':font_color}">上一章</view>
-				<view @click="emit('clickKeep')" style="align-items: center; display: flex;">
+				<view @click="emit('clickKeep',book_id)" style="align-items: center; display: flex;">
 					<image src="../../static/logo.png" style="width: 40rpx;height: 40rpx; margin-right: 10px;"></image>
 					<view :style="{'color':font_color}">{{BookshelfStatusTitle}}</view>
 				</view>
@@ -70,6 +70,13 @@
 	}
 	let type = 'bottom'
 	onMounted(()=>{
+		tools.checkBookOnBookshelf(book_id,(is_on)=>{
+			if(is_on){
+				BookshelfStatusTitle.value = '已添加书架'
+			}else{
+				BookshelfStatusTitle.value = '加入书架'
+			}
+		})
 		// open 方法传入参数 等同在 uni-popup 组件上绑定 type属性
 		menu.value.open(type)
 	})
@@ -119,10 +126,17 @@
 	let db_color = ref(tools.getDbColorByMode(ReadSetting().data.readMode))
 	
 	let BookshelfStatusTitle = ref('加入书架')
-	tools.checkBookOnBookshelf(book_id,(is_on)=>{
-		BookshelfStatusTitle.value = '已添加书架'
-	})
-	defineExpose({showSettingFont})
+	
+	function updateBookshelfStatus(){
+		tools.checkBookOnBookshelf(book_id,(is_on)=>{
+			if(is_on){
+				BookshelfStatusTitle.value = '已添加书架'
+			}else{
+				BookshelfStatusTitle.value = '加入书架'
+			}
+		})
+	}
+	defineExpose({showSettingFont,updateBookshelfStatus})
 	
 </script>
 

+ 18 - 2
xs-app/pages/readbook/read.vue

@@ -8,7 +8,7 @@
 		:text_content="book_read_data_item.book_content" :book_title="book_read_data_item.book_title">
 		</readPage>
 	</scroll-view>
-	<settingMenu ref="Menu" v-if="menuShow" @clickCatalog="onClickCatalog"
+	<settingMenu ref="Menu" v-if="menuShow" :book_id="book_data.book_id" @clickCatalog="onClickCatalog"
 	@clickPreChapter="onClickPreChapter" @clickNextChapter="onClickNextChapter" 
 	@clickMode="onClickMode" @clickOpenSetting="onClickOpenSetting"
 	@Close="closeMenu" @changeFontSize="onChangeFontSize" @changeBgColor="onChangeBgColor"
@@ -296,7 +296,23 @@
 		ReadSetting().changeAutoBuyNextChapter(isAuto)
 	}
 	
-	function onClickKeep(){
+	function onClickKeep(book_id:number){
+		tools.checkBookOnBookshelf(book_id,(is_on)=>{
+			if(is_on){
+				uni.showToast({
+					title:'当前书已在书架中了!',
+					icon:'none'
+				})
+			}else{
+				tools.addBookshelf(book_data,()=>{
+					Menu.value.updateBookshelfStatus()
+					uni.showToast({
+						title:'成功添加书架!',
+						icon:'none'
+					})
+				})
+			}
+		})
 		log.Debug("收藏",book_data.book_name)
 	}