hookehuyr

✨ feat(我的模块): 我的收藏和我的点赞API请求调整

...@@ -4,6 +4,8 @@ const Api = { ...@@ -4,6 +4,8 @@ const Api = {
4 CHANGE_PERFORMER: '/srv/?a=change_performer', 4 CHANGE_PERFORMER: '/srv/?a=change_performer',
5 MY_INFO: '/srv/?a=my_info', 5 MY_INFO: '/srv/?a=my_info',
6 MY_PERFORMER: '/srv/?a=my_performer', 6 MY_PERFORMER: '/srv/?a=my_performer',
7 + MY_LIKE: '/srv/?a=my_like',
8 + MY_FAVOR: '/srv/?a=my_favor',
7 } 9 }
8 10
9 /** 11 /**
...@@ -26,3 +28,17 @@ export const myInfoAPI = (params) => fn(fetch.get(Api.MY_INFO, params)); ...@@ -26,3 +28,17 @@ export const myInfoAPI = (params) => fn(fetch.get(Api.MY_INFO, params));
26 * @returns 28 * @returns
27 */ 29 */
28 export const myPerformerAPI = (params) => fn(fetch.get(Api.MY_PERFORMER, params)); 30 export const myPerformerAPI = (params) => fn(fetch.get(Api.MY_PERFORMER, params));
31 +
32 +/**
33 + * @description: 点赞列表信息
34 + * @param {*} params
35 + * @returns
36 + */
37 +export const myLikeAPI = (params) => fn(fetch.get(Api.MY_LIKE, params));
38 +
39 +/**
40 + * @description: 收藏列表信息
41 + * @param {*} params
42 + * @returns
43 + */
44 +export const myFavorAPI = (params) => fn(fetch.get(Api.MY_FAVOR, params));
......
...@@ -16,11 +16,10 @@ ...@@ -16,11 +16,10 @@
16 import VideoCard from '@/components/VideoCard/index.vue' 16 import VideoCard from '@/components/VideoCard/index.vue'
17 import no_image from '@images/que-shuju@2x.png' 17 import no_image from '@images/que-shuju@2x.png'
18 import { onBeforeRouteLeave } from 'vue-router' 18 import { onBeforeRouteLeave } from 'vue-router'
19 -import { ref } from 'vue' 19 +import { ref, onMounted } from 'vue'
20 -import axios from '@/utils/axios';
21 -import { Toast } from 'vant';
22 import _ from 'lodash' 20 import _ from 'lodash'
23 import { useScrollTop } from '@/composables'; 21 import { useScrollTop } from '@/composables';
22 +import { myFavorAPI } from '@/api/C/me.js'
24 23
25 const { resetScrollTop, store } = useScrollTop(); // 页面滚动恢复 24 const { resetScrollTop, store } = useScrollTop(); // 页面滚动恢复
26 resetScrollTop('scrollTopCollection'); 25 resetScrollTop('scrollTopCollection');
...@@ -34,30 +33,19 @@ onBeforeRouteLeave(() => { ...@@ -34,30 +33,19 @@ onBeforeRouteLeave(() => {
34 const prodList = ref([]) 33 const prodList = ref([])
35 // 因为不能让空图标提前出来的写法 34 // 因为不能让空图标提前出来的写法
36 const emptyStatus = ref(false); 35 const emptyStatus = ref(false);
37 -axios.get('/srv/?a=my_favor')
38 - .then(res => {
39 - if (res.data.code === 1) {
40 - prodList.value = res.data.data.prod;
41 - _.each(prodList.value, (item) => {
42 - item.type = 'read-only' // 特殊标识,判断入口 为keepAlive使用
43 - });
44 - if (!res.data.data.prod.length) {
45 - emptyStatus.value = true;
46 - }
47 - } else {
48 - console.warn(res);
49 - if (!res.data.show) return false;
50 - Toast({
51 - icon: 'close',
52 - message: res.data.msg
53 - });
54 - }
55 - })
56 - .catch(err => {
57 - console.error(err);
58 - });
59 -
60 36
37 +onMounted(async () => {
38 + // 获取点赞列表
39 + const { data } = await myFavorAPI();
40 + if (!data.prod.length) {
41 + emptyStatus.value = true;
42 + } else {
43 + prodList.value = data.prod;
44 + _.each(prodList.value, (item) => {
45 + item.type = 'read-only'; // 特殊标识,判断入口 为keepAlive使用
46 + })
47 + }
48 +});
61 </script> 49 </script>
62 50
63 <style lang="less" scoped> 51 <style lang="less" scoped>
......
...@@ -16,11 +16,10 @@ ...@@ -16,11 +16,10 @@
16 import VideoCard from '@/components/VideoCard/index.vue' 16 import VideoCard from '@/components/VideoCard/index.vue'
17 import no_image from '@images/que-shuju@2x.png' 17 import no_image from '@images/que-shuju@2x.png'
18 import { onBeforeRouteLeave } from 'vue-router' 18 import { onBeforeRouteLeave } from 'vue-router'
19 -import { ref } from 'vue' 19 +import { ref, onMounted } from 'vue'
20 -import axios from '@/utils/axios';
21 -import { Toast } from 'vant';
22 import _ from 'lodash' 20 import _ from 'lodash'
23 import { useScrollTop } from '@/composables'; 21 import { useScrollTop } from '@/composables';
22 +import { myLikeAPI } from '@/api/C/me.js'
24 23
25 /******************** 返回点击位置 ********************/ 24 /******************** 返回点击位置 ********************/
26 const { resetScrollTop, store } = useScrollTop(); // 页面滚动恢复 25 const { resetScrollTop, store } = useScrollTop(); // 页面滚动恢复
...@@ -33,30 +32,22 @@ onBeforeRouteLeave(() => { ...@@ -33,30 +32,22 @@ onBeforeRouteLeave(() => {
33 /*****************************************************/ 32 /*****************************************************/
34 33
35 // 处理书籍下作品列表 34 // 处理书籍下作品列表
36 -const prodList = ref([]) 35 +const prodList = ref([]);
36 +
37 // 因为不能让空图标提前出来的写法 37 // 因为不能让空图标提前出来的写法
38 const emptyStatus = ref(false); 38 const emptyStatus = ref(false);
39 -axios.get('/srv/?a=my_like') 39 +
40 -.then(res => { 40 +onMounted(async () => {
41 - if (res.data.code === 1) { 41 + // 获取点赞列表
42 - prodList.value = res.data.data.prod; 42 + const { data } = await myLikeAPI();
43 + if (!data.prod.length) {
44 + emptyStatus.value = true;
45 + } else {
46 + prodList.value = data.prod;
43 _.each(prodList.value, (item) => { 47 _.each(prodList.value, (item) => {
44 item.type = 'read-only'; // 特殊标识,判断入口 为keepAlive使用 48 item.type = 'read-only'; // 特殊标识,判断入口 为keepAlive使用
45 }) 49 })
46 - if (!res.data.data.prod.length) {
47 - emptyStatus.value = true;
48 - }
49 - } else {
50 - console.warn(res);
51 - if (!res.data.show) return false;
52 - Toast({
53 - icon: 'close',
54 - message: res.data.msg
55 - });
56 } 50 }
57 -})
58 -.catch(err => {
59 - console.error(err);
60 }); 51 });
61 </script> 52 </script>
62 53
......