优化组件类型声明,添加页面描述元信息,更新依赖项,添加新图片,重构多个组件,改进画廊功能
This commit is contained in:
@ -30,14 +30,20 @@ const data: any = reactive({
|
||||
|
||||
onMounted(async () => {
|
||||
// 8834041785
|
||||
const res = await fetch("https://met.hxyouzi.com/meting-api/?server=tencent&type=playlist&id=7567066822")
|
||||
// const res = await fetch("https://met.hxyouzi.com/meting-api/?server=tencent&type=playlist&id=7567066822")
|
||||
// const res = await fetch("https://api.moeyao.cn/meting/?server=tencent&type=playlist&id=8834041785")
|
||||
const mlist = await res.json()
|
||||
// const mlist = await res.json()
|
||||
const metto = 'youzi'
|
||||
const server = 'tencent'
|
||||
const gdid = '7567066822'
|
||||
let ck = 'RK=beuVmBI+x3; ptcz=08924c0c66c35b66361f002fb0b3005ff0f2144404f548f8728b167ffb3dc25d; pgv_pvid=2605897556; fqm_pvqid=c38eee7f-1f49-4867-8fb4-8dbb764cb93b; ts_uid=4584087650; pac_uid=0_xXEQBtbyPnKSj; omgid=0_SK8mZi6ZyjtN4; _qimei_q32=d611a6803057686110470945b0c17a21; _qimei_q36=fcef018f916225c22be032db30001e219617; _qimei_h38=e8d664cf2171af215382857302000000719801; eas_sid=I1j7m5e9o2O188P6Y4P7D745Z4; fqm_sessionid=f2c44c43-4d85-4dcb-99c0-cef6d6e2b0cb; pgv_info=ssid=s1311374400; ts_last=y.qq.com/; ts_refer=cn.bing.com/; _qpsvr_localtk=0.1390152059728047; login_type=1; psrf_access_token_expiresAt=1765271149; psrf_qqopenid=DE4C1520CB81DEEF7C0BE8E9B0FD2783; wxrefresh_token=; music_ignore_pskey=202306271436Hn@vBj; wxunionid=; euin=owv5oeCioiEAoz**; wxopenid=; tmeLoginType=2; psrf_qqrefresh_token=A9707E145813679F3654C6E051AA3E2F; psrf_qqaccess_token=C0591D34DF4A719D28815DBA71122DC5; psrf_musickey_createtime=1760087149; psrf_qqunionid=AD81CE40E407AFA9A2F984D05F7F5CD6; uin=2410633923; qm_keyst=Q_H_L_63k3NMFc5RtmTBDyGhskoc5AjaymIKYUZThRS2bJfh0AHztt8D10MRy1XN-MEAUtIkdF_oauym2Y51IbgjNvw1Wu8hZECDA; qqmusic_key=Q_H_L_63k3NMFc5RtmTBDyGhskoc5AjaymIKYUZThRS2bJfh0AHztt8D10MRy1XN-MEAUtIkdF_oauym2Y51IbgjNvw1Wu8hZECDA'
|
||||
const res = await fetch(`https://met.hxyouzi.com/api?server=${server}&type=playlist&id=${gdid}`)
|
||||
let mlist: any = await res.json()
|
||||
data.audio = []
|
||||
mlist.forEach((i: any) => {
|
||||
data.audio.push({
|
||||
title: i.name,
|
||||
author: i.artist,
|
||||
title: i.title,
|
||||
author: i.author,
|
||||
url: i.url,
|
||||
pic: i.pic,
|
||||
lrc: i.lrc,
|
||||
|
||||
@ -1,37 +1,27 @@
|
||||
<template>
|
||||
<div class="pr-8">
|
||||
<!-- <d-card shadow="never" class="mt-10 bg-white"> -->
|
||||
<div class="dt-card mt-10 bg-white">
|
||||
<!-- <template #title> -->
|
||||
<div class="flex items-center">
|
||||
<icon-time class="w-5 mr-2"></icon-time>
|
||||
时间日期
|
||||
</div>
|
||||
<!-- </template> -->
|
||||
<!-- <template #content> -->
|
||||
<div class="w-full text-center text-[#ec66ab] font-500 text-4xl font-[yj]">{{ t }}</div>
|
||||
<div class="mt-3 text-right">{{ d }}</div>
|
||||
<!-- </template> -->
|
||||
</div>
|
||||
<!-- </d-card> -->
|
||||
|
||||
<d-card shadow="never" class="mt-10 bg-white">
|
||||
<d-card shadow="never" class="mt-4 bg-white">
|
||||
<!-- <div class="dt-card mt-10 bg-white"> -->
|
||||
<template #title>
|
||||
<div class="flex items-center">
|
||||
<icon-date class="w-5 mr-2"></icon-date>
|
||||
农历节气
|
||||
<icon-time class="w-5 mr-2"></icon-time>
|
||||
时间日期
|
||||
</div>
|
||||
</template>
|
||||
<template #content>
|
||||
<div class="w-full text-center text-[#ec66ab] font-500">{{ jq.yearTips }}年 {{ jq.lunarCalendar }}</div>
|
||||
<div class="w-full flex justify-center">
|
||||
<img class="mt-2 w-[90%] rounded" :src="jqImg" alt=""></img>
|
||||
<div class="w-full pr-20 text-center text-[#ec66ab] font-500 text-4xl font-[yj]">{{ t }}</div>
|
||||
<div class="mt-3 flex justify-between">
|
||||
<span>今年已过了{{ jq.dayOfYear }}天</span>
|
||||
{{ d }}
|
||||
</div>
|
||||
<div class="mt-2 text-center">{{ jq.solarTerms }}</div>
|
||||
<img v-if="jq.type != 0" class="absolute top-0 right-4" width="120" src="@/assets/images/offwork.png" alt="">
|
||||
<img v-else class="absolute top-0 right-4" width="120" src="@/assets/images/onwork.png" alt="">
|
||||
</template>
|
||||
<!-- </div> -->
|
||||
</d-card>
|
||||
|
||||
<d-card shadow="never" class="mt-10 bg-white">
|
||||
|
||||
<d-card shadow="never" class="mt-4 bg-white">
|
||||
<template #title>
|
||||
<div class="flex items-center">
|
||||
<icon-news class="w-5 mr-2"></icon-news>
|
||||
@ -59,6 +49,30 @@
|
||||
</div>
|
||||
</template>
|
||||
</d-card>
|
||||
|
||||
|
||||
<d-card shadow="never" class="mt-4 bg-white">
|
||||
<template #title>
|
||||
<div class="flex items-center">
|
||||
<icon-date class="w-5 mr-2"></icon-date>
|
||||
农历节气
|
||||
<div class="ml-12 text-[#ec66ab] font-500">{{ jq.yearTips }}年 {{ jq.lunarCalendar }}</div>
|
||||
</div>
|
||||
</template>
|
||||
<template #content>
|
||||
<div class="truncate text-sm mx-[5%]">
|
||||
宜:{{ jq.suit }}
|
||||
</div>
|
||||
<div class="truncate text-sm mx-[5%]">
|
||||
忌:{{ jq.avoid }}
|
||||
</div>
|
||||
<div class="w-full flex justify-center">
|
||||
<img class="mt-2 w-[90%] rounded" :src="jqImg" alt=""></img>
|
||||
</div>
|
||||
<div class="mt-2 text-center">{{ jq.solarTerms }}</div>
|
||||
</template>
|
||||
</d-card>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@ -119,9 +133,8 @@ onUnmounted(() => {
|
||||
src: url('@/assets/font/LCDML.woff2');
|
||||
}
|
||||
|
||||
.dt-card {
|
||||
background-image: url('@/assets/images/中秋节中国风边框34.png');
|
||||
background-size: 100% 100%;
|
||||
padding: 20px 40px;
|
||||
}
|
||||
</style>
|
||||
// .dt-card {
|
||||
// background-image: url('@/assets/images/中秋节中国风边框34.png');
|
||||
// background-size: 100% 100%;
|
||||
// padding: 20px 40px;
|
||||
// }</style>
|
||||
@ -32,8 +32,8 @@
|
||||
</d-menu-item>
|
||||
</d-menu>
|
||||
<!-- 用户区域 -->
|
||||
<div class="!text-[#ec66ab] user-area flex items-center px-3">
|
||||
<span class="flex items-center location-info ">
|
||||
<div class="!text-[#ec66ab] flex items-center" @click="gotoHf">
|
||||
<span class="flex items-center location-info truncate">
|
||||
<d-icon color="#ec66ab" class="mr-1" name="location-new"></d-icon>
|
||||
{{ locationInfo }}
|
||||
</span>
|
||||
@ -41,8 +41,11 @@
|
||||
<span class="weather-info mr-2">{{ wea }}</span>
|
||||
<i :class="'qiIcon qi-' + weaIcon + '-fill'"></i>
|
||||
<span class="weather-info ml-4">{{ temp }}°C</span>
|
||||
<d-avatar v-if="userinfo" :img-src="userinfo.ava_url" class="ml-20 cursor-pointer" alt="用户的头" />
|
||||
<d-avatar v-else class="ml-20 cursor-pointer" @click="toLogin"></d-avatar>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center ">
|
||||
<d-avatar v-if="userinfo" :img-src="userinfo.ava_url" class="ml-10 mr-4 cursor-pointer" alt="用户的头" />
|
||||
<d-avatar v-else class="ml-10 mr-4 cursor-pointer" @click="toLogin"></d-avatar>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -69,6 +72,7 @@ const key = ref("home");
|
||||
const locationInfo = ref("获取位置中...");
|
||||
const latitude = ref<number | null>(null);
|
||||
const longitude = ref<number | null>(null);
|
||||
const fxlink = ref<string>("#")
|
||||
const wea = ref("")
|
||||
const weaIcon = ref<string>("")
|
||||
const temp = ref<number>(0);
|
||||
@ -96,13 +100,13 @@ const getLocation = () => {
|
||||
async (error) => {
|
||||
switch (error.code) {
|
||||
case error.PERMISSION_DENIED:
|
||||
locationInfo.value = "用户拒绝了位置请求";
|
||||
locationInfo.value = "正在定位...";
|
||||
break;
|
||||
case error.POSITION_UNAVAILABLE:
|
||||
locationInfo.value = "位置信息不可用";
|
||||
locationInfo.value = "正在定位...";
|
||||
break;
|
||||
case error.TIMEOUT:
|
||||
locationInfo.value = "获取位置超时";
|
||||
locationInfo.value = "正在定位...";
|
||||
break;
|
||||
}
|
||||
const res = await $http.mix.getIp();
|
||||
@ -125,11 +129,12 @@ async function handdleJw(jw: string) {
|
||||
const zxs = ['北京', '重庆', '天津', '上海']
|
||||
// 根据经纬度获取物理位置
|
||||
const loc = await $http.mix.getLocation({ location: jw });
|
||||
console.log(loc);
|
||||
console.log('>>> --> handdleJw --> loc:', loc)
|
||||
fxlink.value = loc.data.fxLink
|
||||
if (loc.code == 200) {
|
||||
const data = loc.data;
|
||||
if (zxs.includes(data.adm2)) {
|
||||
locationInfo.value = `${data.country}${data.adm1}${data.name}`;
|
||||
locationInfo.value = `${data.adm1}${data.name}`;
|
||||
} else {
|
||||
locationInfo.value = `${data.adm1}${data.adm2}${data.name}`;
|
||||
}
|
||||
@ -138,7 +143,7 @@ async function handdleJw(jw: string) {
|
||||
return
|
||||
}
|
||||
const res = await $http.mix.getWeather({ location: jw });
|
||||
console.log(res);
|
||||
console.log('>>> --> handdleJw --> res:', res)
|
||||
if (res.code == 200) {
|
||||
wea.value = res.data.text;
|
||||
weaIcon.value = res.data.icon;
|
||||
@ -158,11 +163,17 @@ function goHome() {
|
||||
}
|
||||
|
||||
function toLogin() {
|
||||
console.log('>>> --> toLogin --> toLogin:', 'toLogin')
|
||||
|
||||
if ($cookies.get('token')) return
|
||||
router.push('/login');
|
||||
}
|
||||
|
||||
|
||||
function gotoHf(){
|
||||
console.log('>>> --> gotoHf --> fxlink:', fxlink)
|
||||
window.open(fxlink.value,"_BLACK")
|
||||
|
||||
}
|
||||
onMounted(() => {
|
||||
|
||||
userinfo.value = $cookies.get('userinfo');
|
||||
|
||||
Reference in New Issue
Block a user