mirror of
https://github.com/BTMuli/TeyvatGuide.git
synced 2025-12-14 09:38:13 +08:00
🌱 初步完成分享功能 2.5/4
This commit is contained in:
@@ -8,6 +8,10 @@
|
|||||||
<v-tab value="team">队伍出场</v-tab>
|
<v-tab value="team">队伍出场</v-tab>
|
||||||
<v-tab value="hold">角色持有</v-tab>
|
<v-tab value="hold">角色持有</v-tab>
|
||||||
</v-tabs>
|
</v-tabs>
|
||||||
|
<v-btn variant="outlined" class="hta-btn" @click="shareWiki">
|
||||||
|
<v-icon>mdi-share-variant</v-icon>
|
||||||
|
<span>分享</span>
|
||||||
|
</v-btn>
|
||||||
<div class="hta-title">
|
<div class="hta-title">
|
||||||
<span>胡桃数据库</span>
|
<span>胡桃数据库</span>
|
||||||
<span @click="showDialog = true">更新于 {{ getUpdated() }}</span>
|
<span @click="showDialog = true">更新于 {{ getUpdated() }}</span>
|
||||||
@@ -18,7 +22,7 @@
|
|||||||
<HtaTabUse v-if="avatarUse.length > 0" v-model="avatarUse" />
|
<HtaTabUse v-if="avatarUse.length > 0" v-model="avatarUse" />
|
||||||
</v-window-item>
|
</v-window-item>
|
||||||
<v-window-item value="up">
|
<v-window-item value="up">
|
||||||
<HtaTabUp v-model="avatarUp" />
|
<HtaTabUp v-if="avatarUp.length > 0" v-model="avatarUp" />
|
||||||
</v-window-item>
|
</v-window-item>
|
||||||
<v-window-item value="team">
|
<v-window-item value="team">
|
||||||
<HtaTabTeam v-model="teamCombination" />
|
<HtaTabTeam v-model="teamCombination" />
|
||||||
@@ -41,6 +45,7 @@ import HtaTabTeam from "../../components/hutaoAbyss/hta-tab-team.vue";
|
|||||||
import HtaTabHold from "../../components/hutaoAbyss/hta-tab-hold.vue";
|
import HtaTabHold from "../../components/hutaoAbyss/hta-tab-hold.vue";
|
||||||
// plugins
|
// plugins
|
||||||
import Hutao from "../../plugins/Hutao";
|
import Hutao from "../../plugins/Hutao";
|
||||||
|
import { generateShareImg } from "../../utils/TGShare";
|
||||||
|
|
||||||
// loading
|
// loading
|
||||||
const loading = ref<boolean>(false);
|
const loading = ref<boolean>(false);
|
||||||
@@ -80,6 +85,26 @@ function getUpdated() {
|
|||||||
.toLocaleString("zh-CN", { hour12: false })
|
.toLocaleString("zh-CN", { hour12: false })
|
||||||
.replace(/\//g, "-");
|
.replace(/\//g, "-");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getShareTitle() {
|
||||||
|
switch (tab.value) {
|
||||||
|
case "use":
|
||||||
|
return `【胡桃】${overview.value.scheduleId}-角色使用`;
|
||||||
|
case "up":
|
||||||
|
return `【胡桃】${overview.value.scheduleId}-角色出场`;
|
||||||
|
case "team":
|
||||||
|
return `【胡桃】${overview.value.scheduleId}-队伍出场`;
|
||||||
|
case "hold":
|
||||||
|
return `【胡桃】${overview.value.scheduleId}-角色持有`;
|
||||||
|
}
|
||||||
|
return `【胡桃】${overview.value.scheduleId}-深渊数据`;
|
||||||
|
}
|
||||||
|
|
||||||
|
async function shareWiki() {
|
||||||
|
const div = document.querySelector(".hta-box") as HTMLDivElement;
|
||||||
|
const title = getShareTitle();
|
||||||
|
await generateShareImg(title, div);
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
<style lang="css" scoped>
|
<style lang="css" scoped>
|
||||||
.hta-box {
|
.hta-box {
|
||||||
@@ -95,7 +120,9 @@ function getUpdated() {
|
|||||||
.hta-top {
|
.hta-top {
|
||||||
display: flex;
|
display: flex;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
justify-content: space-between;
|
justify-content: flex-start;
|
||||||
|
align-items: center;
|
||||||
|
column-gap: 10px;
|
||||||
color: var(--common-text-title);
|
color: var(--common-text-title);
|
||||||
font-family: var(--font-title);
|
font-family: var(--font-title);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user