hookehuyr

🦄 refactor(我的订阅列表): 写法优化

......@@ -2,7 +2,7 @@
* @Author: hookehuyr hookehuyr@gmail.com
* @Date: 2022-05-18 22:16:10
* @LastEditors: hookehuyr hookehuyr@gmail.com
* @LastEditTime: 2022-06-10 11:29:45
* @LastEditTime: 2022-06-24 21:34:23
* @FilePath: /tswj/src/api/C/me.js
* @Description: 我的页面接口操作
*/
......@@ -17,6 +17,7 @@ const Api = {
MY_COMMENT: '/srv/?a=my_comment',
MY_ATME: '/srv/?a=my_atme',
DEL_COMMENT: '/srv/?a=del_comment',
MY_SUBSCRIBE: '/srv/?a=my_subscribe',
}
/**
......@@ -76,3 +77,9 @@ export const delCommentAPI = (params) => fn(fetch.post(Api.DEL_COMMENT, params))
* @returns
*/
export const myAtmeAPI = (params) => fn(fetch.get(Api.MY_ATME, params));
/**
* @description: 我的订阅
* @returns
*/
export const mySubscribeAPI = (params) => fn(fetch.get(Api.MY_SUBSCRIBE, params));
......
......@@ -2,75 +2,37 @@
* @Author: hookehuyr hookehuyr@gmail.com
* @Date: 2022-04-28 11:37:47
* @LastEditors: hookehuyr hookehuyr@gmail.com
* @LastEditTime: 2022-06-09 16:13:47
* @LastEditTime: 2022-06-24 22:03:38
* @FilePath: /tswj/src/views/me/subscribe.vue
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @Description:
-->
<template>
<div class="book-list">
<template v-for="(item, key) in items" :key="key">
<book-card type="C" :item="item" @on-click="go('/client/bookDetail', { id: item.id })"></book-card>
<div class="subscribe-list">
<template v-for="(item) in items" :key="item.id">
<book-card :type="USER_ROLE.CLIENT" :item="item" @on-click="go('/client/bookDetail', { id: item.id })" />
</template>
</div>
<van-empty v-if="emptyStatus"
class="custom-image"
:image="no_image"
description="暂无订阅"
/>
<van-empty v-if="emptyStatus" class="custom-image" :image="no_image" description="暂无订阅" />
</template>
<script setup>
import no_image from '@images/que-shuju@2x.png'
import BookCard from '@/components/BookCard/index.vue'
import { ref } from 'vue'
import axios from '@/utils/axios';
import { ref, onMounted } from 'vue'
import { useGo } from '@/hooks/useGo'
import { mySubscribeAPI } from '@/api/C/me'
import { USER_ROLE } from '@/constant'
const go = useGo()
// 因为不能让空图标提前出来的写法
const emptyStatus = ref(false);
const items = ref([]);
axios.get('/srv/?a=my_subscribe')
.then(res => {
if (res.data.code === 1) {
items.value = res.data.data;
if (!res.data.data.length) {
emptyStatus.value = true;
} else {
emptyStatus.value = false;
}
} else {
console.warn(res);
if (!res.data.show) return false;
Toast({
icon: 'close',
message: res.data.msg
});
}
})
.catch(err => {
console.error(err);
});
</script>
<script>
import mixin from 'common/mixin';
export default {
mixins: [mixin.init],
data() {
return {
}
},
mounted() {
},
methods: {
onMounted(async () => {
const { data, code } = await mySubscribeAPI()
if (code) {
items.value = data;
emptyStatus.value = data.length ? false : true;
}
}
})
</script>
<style lang="less" scoped>
......