修复本地环境

This commit is contained in:
扫地僧 2025-12-25 23:15:46 +08:00
parent dd6ee001f1
commit 5c21f20126
6 changed files with 29 additions and 38 deletions

View File

@ -1,2 +1,8 @@
# API 基础地址
# 应用名称
VITE_APP_NAME=Yunzer
# 通用配置
VITE_APP_VERSION=1.0.0
# 接口地址
VITE_API_DOMAIN=http://localhost:8000

Binary file not shown.

Binary file not shown.

View File

@ -1,16 +1,16 @@
import { createRouter, createWebHistory } from "vue-router";
import { createRouter, createWebHashHistory } from "vue-router";
const router = createRouter({
history: createWebHistory(),
history: createWebHashHistory(),
routes: [
{
path: "/",
redirect: "/index",
name: "index",
component: () => import("@/views/index/index.vue"),
},
{
path: "/index",
name: "index",
component: () => import("@/views/index/index.vue"),
redirect: "/",
},
{
path: "/siteInformation",

View File

@ -4,13 +4,12 @@ import { useRoute, useRouter } from "vue-router";
import { ElMessage } from "element-plus";
import Header from "@/views/components/header.vue";
import Footer from "@/views/components/footer.vue";
import { siteInformation } from "@/api/siteInformation";
import { technicalArticles } from "@/api/technicalArticles";
import { article } from "@/api/article";
const route = useRoute();
const router = useRouter();
const articleId = ref(route.query.id as string);
const article = ref<any>(null);
const articleData = ref<any>(null);
const loading = ref(true);
//
@ -41,25 +40,11 @@ const fetchArticleDetail = async () => {
loading.value = true;
try {
// API
const source = route.query.source as string;
let response: any;
if (source === 'siteInformation') {
response = await siteInformation.getSiteInformationDetail(articleId.value);
} else if (source === 'technicalArticles') {
response = await technicalArticles.getTechnicalArticlesDetail(articleId.value);
} else {
// API
try {
response = await siteInformation.getSiteInformationDetail(articleId.value);
} catch {
response = await technicalArticles.getTechnicalArticlesDetail(articleId.value);
}
}
// 使article API
const response: any = await article.getArticleDetail(articleId.value);
if (response.data?.data) {
article.value = response.data.data;
articleData.value = response.data.data;
} else {
ElMessage.warning(response.data?.msg || "获取文章详情失败");
router.push("/");
@ -108,41 +93,41 @@ onMounted(() => {
<div v-else class="article-content">
<!-- 文章标题 -->
<div class="article-header">
<h1 class="article-title">{{ article.title }}</h1>
<h1 class="article-title">{{ articleData.title }}</h1>
<div class="article-meta">
<span class="article-date">
<i class="fas fa-calendar"></i>
{{ formatDate(article.publishdate || article.created_at) }}
{{ formatDate(articleData.publishdate || articleData.created_at) }}
</span>
<span class="article-views" v-if="article.view">
<span class="article-views" v-if="articleData.view">
<i class="fas fa-eye"></i>
{{ article.view }} 阅读
{{ articleData.view }} 阅读
</span>
<span class="article-likes" v-if="article.likes">
<span class="article-likes" v-if="articleData.likes">
<i class="fas fa-heart"></i>
{{ article.likes }} 点赞
{{ articleData.likes }} 点赞
</span>
</div>
</div>
<!-- 文章图片 -->
<div class="article-image" v-if="article.image">
<img :src="getImageUrl(article.image)" :alt="article.title" />
<div class="article-image" v-if="articleData.image">
<img :src="getImageUrl(articleData.image)" :alt="articleData.title" />
</div>
<!-- 文章正文 -->
<div class="article-body">
<div
class="article-text"
v-html="article.content"
v-html="articleData.content"
></div>
</div>
<!-- 文章标签 -->
<div class="article-tags" v-if="article.tags && article.tags.length">
<div class="article-tags" v-if="articleData.tags && articleData.tags.length">
<span class="tag-label">标签</span>
<el-tag
v-for="tag in article.tags"
v-for="tag in articleData.tags"
:key="tag"
size="small"
class="article-tag"

View File

@ -113,7 +113,7 @@ const fetchResourceDetail = async () => {
loading.value = true;
try {
// downloadGames使downloadGames API
const response = await resourceApi.getResourceDetail(resourceId.value);
const response:any = await resourceApi.getResourceDetail(resourceId.value);
if (response.data?.data) {
resourceData.value = response.data.data;