feat(pages): add band list page
This commit is contained in:
parent
7299471a52
commit
8ac524fb9a
36
pages/bands.vue
Normal file
36
pages/bands.vue
Normal file
@ -0,0 +1,36 @@
|
||||
<script lang="ts" setup>
|
||||
import { IBand } from '~/models/band';
|
||||
import icon from '~/components/icon.vue';
|
||||
const {data} = await useApiFetch("/bands/all")
|
||||
const bands = data as Ref<IBand[]>
|
||||
const hider = (id: number) => (e) => {
|
||||
bands.value.splice(bands.value.findIndex(a => a._id == id), 1)
|
||||
useApiFetch("/user/hide", {
|
||||
body: {
|
||||
authors: [],
|
||||
bands: [id]
|
||||
},
|
||||
method: "post"
|
||||
})
|
||||
}
|
||||
</script>
|
||||
<template>
|
||||
<a-list :grid="{ gutter: 5, xs: 1, sm: 2, md: 4, lg: 4, xl: 6, xxl: 7 }" v-model:data-source="bands">
|
||||
<template #renderItem="{ item } ">
|
||||
<a-list-item>
|
||||
<a-row :gutter="[10, 10]">
|
||||
<a-col>
|
||||
<NuxtLink :to="`/band/${item._id}`">
|
||||
{{ item.name }}
|
||||
</NuxtLink>
|
||||
</a-col>
|
||||
<a-col>
|
||||
<a @click="hider(item._id)">
|
||||
<icon :istyle="'regular'" name="eye-slash" :size="12"/>
|
||||
</a>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-list-item>
|
||||
</template>
|
||||
</a-list>
|
||||
</template>
|
Loading…
Reference in New Issue
Block a user