Toggle navigation
Toggle navigation
This project
Loading...
Sign in
Hooke
/
tswj
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
hookehuyr
2022-06-24 22:06:39 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
10b3087736bc751b8ca5367e05b35624ccb85069
10b30877
1 parent
14729715
🦄 refactor(我的订阅列表): 写法优化
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
23 additions
and
54 deletions
src/api/C/me.js
src/views/me/subscribe.vue
src/api/C/me.js
View file @
10b3087
...
...
@@ -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
));
...
...
src/views/me/subscribe.vue
View file @
10b3087
...
...
@@ -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>
...
...
Please
register
or
login
to post a comment