hookehuyr

订阅书籍接口获取方式调整

1 +import { fn, fetch } from '@/api/fn';
2 +
3 +const Api = {
4 + ADD_SUBSCRIBE: '/srv/?a=add_subscribe',
5 +}
6 +
7 +/**
8 + * @description: 订阅书籍操作
9 + * @param {String} book_id 书籍 ID
10 + * @returns
11 + */
12 +export const addSubscribeAPI = (params) => fn(fetch.post(Api.ADD_SUBSCRIBE, params));
...@@ -37,6 +37,6 @@ export const fetch = { ...@@ -37,6 +37,6 @@ export const fetch = {
37 return axios.get(api, { params }) 37 return axios.get(api, { params })
38 }, 38 },
39 post: function (api, params) { 39 post: function (api, params) {
40 - axios.post(api, params) 40 + return axios.post(api, params)
41 } 41 }
42 } 42 }
......
...@@ -115,17 +115,14 @@ ...@@ -115,17 +115,14 @@
115 </template> 115 </template>
116 116
117 <script setup> 117 <script setup>
118 -import { ref, onActivated, nextTick, watch } from 'vue' 118 +import { ref, onActivated, nextTick } from 'vue'
119 import { useRoute, useRouter, onBeforeRouteLeave } from 'vue-router' 119 import { useRoute, useRouter, onBeforeRouteLeave } from 'vue-router'
120 - 120 +import { Cookies, $, _, storeToRefs, mainStore, Toast, hasEllipsis } from '@/utils/generatePackage'
121 -import { Cookies, $, _, axios, storeToRefs, mainStore, Toast, hasEllipsis } from '@/utils/generatePackage'
122 import { MyButton, VideoCard, NoticeOverlay, DonateBook, ShortcutFixed } from '@/utils/generateModules' 121 import { MyButton, VideoCard, NoticeOverlay, DonateBook, ShortcutFixed } from '@/utils/generateModules'
123 import { icon_video, icon_up, icon_down, icon_subscribed, icon_unsubscribe, no_image } from '@/utils/generateIcons' 122 import { icon_video, icon_up, icon_down, icon_subscribed, icon_unsubscribe, no_image } from '@/utils/generateIcons'
124 -
125 import { JSJ_FORM_C } from '@/constant' 123 import { JSJ_FORM_C } from '@/constant'
126 - 124 +import { useVideoList, useDefaultPerf, useShortcutBar } from '@/composables';
127 -import { useVideoList, useDefaultPerf } from '@/composables'; 125 +import { addSubscribeAPI } from '@/api/C/book.js'
128 -import { useShortcutBar } from '@/composables';
129 126
130 const { shortcutItem } = useShortcutBar(['home', 'me']); // 配置快捷跳转条 127 const { shortcutItem } = useShortcutBar(['home', 'me']); // 配置快捷跳转条
131 const $route = useRoute(); 128 const $route = useRoute();
...@@ -146,31 +143,15 @@ nextTick(() => { ...@@ -146,31 +143,15 @@ nextTick(() => {
146 /** 143 /**
147 * 书籍订阅 144 * 书籍订阅
148 */ 145 */
149 -const onSubscribe = () => { 146 +const onSubscribe = async () => {
150 - axios.post('/srv/?a=add_subscribe', { 147 + const { msg } = await addSubscribeAPI({ book_id: $route.query.id });
151 - book_id: $route.query.id 148 + if (msg === 'add subscribe OK') {
152 - }) 149 + bookInfo.value.is_subscribe = true;
153 - .then(res => { 150 + Toast.success('订阅成功')
154 - if (res.data.code === 1) { 151 + } else {
155 - if (res.data.msg === 'add subscribe OK') { 152 + bookInfo.value.is_subscribe = false;
156 - bookInfo.value.is_subscribe = true; 153 + Toast.success('取消订阅')
157 - Toast.success('订阅成功') 154 + }
158 - } else {
159 - bookInfo.value.is_subscribe = false;
160 - Toast.success('取消订阅')
161 - }
162 - } else {
163 - console.warn(res);
164 - if (!res.data.show) return false;
165 - Toast({
166 - icon: 'close',
167 - message: res.data.msg
168 - });
169 - }
170 - })
171 - .catch(err => {
172 - console.error(err);
173 - })
174 } 155 }
175 156
176 /*************** 捐书模块START ***************/ 157 /*************** 捐书模块START ***************/
......