[+] Fetch and display friends

This commit is contained in:
Hykilpikonna
2022-05-11 15:51:19 -04:00
parent ae44ef35a9
commit 499bcfe279
2 changed files with 33 additions and 2 deletions
+4 -1
View File
@@ -1,6 +1,9 @@
<template> <template>
<div id="Others" class="general-page"> <div id="Others" class="general-page">
<div class="title"><h2>更多链接</h2></div> <div class="title">
<h2>更多链接</h2>
<div class="subtitle">欢迎点进来看看</div>
</div>
<div class="links"> <div class="links">
<router-link class="rlink" to="/kitchen-menu">🍳 小桂桂的私房菜 菜单</router-link> <router-link class="rlink" to="/kitchen-menu">🍳 小桂桂的私房菜 菜单</router-link>
<router-link class="rlink" to="/friends">🎎 朋友们</router-link> <router-link class="rlink" to="/friends">🎎 朋友们</router-link>
+29 -1
View File
@@ -2,17 +2,45 @@
<div id="Friends" class="general-page"> <div id="Friends" class="general-page">
<div class="title"> <div class="title">
<h2>朋友们</h2> <h2>朋友们</h2>
<div class="subtitle">和他们的博客链接</div> <div class="subtitle">是小桂桂的朋友们</div>
</div>
<div class="friends" v-if="friends">
<div class="friend" v-for="f in friends" :key="f.name">
<div class="name">{{ f.name }}</div>
<img class="avatar" :src="f.avatar">
</div>
</div> </div>
</div> </div>
</template> </template>
<script lang="ts"> <script lang="ts">
import {Options, Vue} from 'vue-class-component'; import {Options, Vue} from 'vue-class-component';
import {hosts} from "@/scripts/constants";
export interface Friend {
name: string
link: string
avatar: string
banner: string
desc?: string
}
@Options({components: {}}) @Options({components: {}})
export default class Friends extends Vue export default class Friends extends Vue
{ {
friends: Friend[] = []
async created()
{
this.friends = await (await fetch(`${hosts.content}/content/generated/friends/friends.json`)).json()
// Fix avatar relative url
this.friends.forEach(f => {
if (!f.avatar.startsWith('http')) f.avatar = `${hosts.content}/${f.avatar}`
})
}
} }
</script> </script>