refactor: 联系信息页的API重构

This commit is contained in:
2025-11-11 16:58:40 +08:00
parent 5ad6133252
commit ac9e7b4436
3 changed files with 16 additions and 20 deletions

View File

@ -1,4 +1,4 @@
import { readSingleton } from '@directus/sdk'; import GetContactInfo from '@/graphql/contactInfo.graphql?raw';
export const useContactInfo = () => { export const useContactInfo = () => {
const { $directus } = useNuxtApp(); const { $directus } = useNuxtApp();
@ -6,24 +6,11 @@ export const useContactInfo = () => {
const locale = getDirectusLocale(); const locale = getDirectusLocale();
return useAsyncData(`contact-info-${locale}`, async () => { return useAsyncData(`contact-info-${locale}`, async () => {
return await $directus.request( return await $directus.query<{ contact_info: ContactInfo }>(
readSingleton('contact_info', { GetContactInfo,
fields: [ {
'id', locale: locale,
{ }
translations: ['id', 'content'],
},
],
deep: {
translations: {
_filter: {
languages_code: {
_eq: locale,
},
},
},
},
})
); );
}); });
}; };

View File

@ -0,0 +1,9 @@
query GetContactInfo($locale: String!) {
contact_info {
id
translations(filter: { languages_code: { code: { _eq: $locale } } }) {
id
content
}
}
}

View File

@ -24,7 +24,7 @@
]; ];
const { data, pending, error } = await useContactInfo(); const { data, pending, error } = await useContactInfo();
const content = computed(() => toContactInfoView(data.value)); const content = computed(() => toContactInfoView(data.value.contact_info));
watch(error, (value) => { watch(error, (value) => {
if (value) { if (value) {