api路径更改
This commit is contained in:
parent
ae691c6db9
commit
dac7e6f727
|
|
@ -41,7 +41,7 @@ const props = withDefaults(defineProps<Props>(), {
|
|||
})
|
||||
|
||||
// API基础地址
|
||||
const API_BASE_URL = 'http://192.168.2.26:4101'
|
||||
const API_BASE_URL = 'http://192.168.2.77:4101'
|
||||
|
||||
// 内部文章数据(当没有外部传入时使用)
|
||||
const internalArticleData = ref({
|
||||
|
|
@ -355,9 +355,9 @@ const loadCSSFiles = () => {
|
|||
class="sy_news animated" data-wow-delay="200ms"
|
||||
style="visibility: visible; animation-delay: 200ms; animation-name: fadeInDown;">
|
||||
<RecommendedArticles
|
||||
:show-types="['solution', 'developKnowledge', 'industryTrend']"
|
||||
:articles-per-type="3"
|
||||
:show-title="false"
|
||||
:articles-per-type="3"
|
||||
:show-title="false"
|
||||
:show-types="['solution', 'developKnowledge', 'industryTrend']"
|
||||
/>
|
||||
</div>
|
||||
</aside><!-- 右边部分 -->
|
||||
|
|
|
|||
|
|
@ -1,30 +1,30 @@
|
|||
// 文章API服务
|
||||
export interface Article {
|
||||
id: string
|
||||
title: string
|
||||
brief: string | null
|
||||
content: string | null
|
||||
createTime: string
|
||||
code: string | null
|
||||
status: string | null
|
||||
id: string
|
||||
title: string
|
||||
brief: string | null
|
||||
content: string | null
|
||||
createTime: string
|
||||
code: string | null
|
||||
status: string | null
|
||||
}
|
||||
|
||||
export interface ArticleListResponse {
|
||||
msg: string
|
||||
code: number
|
||||
data: Article[]
|
||||
msg: string
|
||||
code: number
|
||||
data: Article[]
|
||||
}
|
||||
|
||||
export interface ArticleListParams {
|
||||
code?: string // 文章类型:solution、developKnowledge、industryTrend
|
||||
orderByColumn?: string
|
||||
isAsc?: string
|
||||
pageNum?: number
|
||||
pageSize?: number
|
||||
code?: string // 文章类型:solution、developKnowledge、industryTrend
|
||||
orderByColumn?: string
|
||||
isAsc?: string
|
||||
pageNum?: number
|
||||
pageSize?: number
|
||||
}
|
||||
|
||||
// API基础地址
|
||||
const API_BASE_URL = 'http://192.168.2.26:4101'
|
||||
const API_BASE_URL = 'http://192.168.2.77:4101'
|
||||
|
||||
/**
|
||||
* 获取文章列表
|
||||
|
|
@ -32,35 +32,35 @@ const API_BASE_URL = 'http://192.168.2.26:4101'
|
|||
* @returns Promise<ArticleListResponse>
|
||||
*/
|
||||
export const fetchArticleList = async (params: ArticleListParams = {}): Promise<ArticleListResponse> => {
|
||||
try {
|
||||
// 构建查询参数
|
||||
const queryParams = new URLSearchParams()
|
||||
try {
|
||||
// 构建查询参数
|
||||
const queryParams = new URLSearchParams()
|
||||
|
||||
if (params.code) queryParams.append('code', params.code)
|
||||
if (params.orderByColumn) queryParams.append('orderByColumn', params.orderByColumn)
|
||||
if (params.isAsc) queryParams.append('isAsc', params.isAsc)
|
||||
if (params.pageNum) queryParams.append('pageNum', params.pageNum.toString())
|
||||
if (params.pageSize) queryParams.append('pageSize', params.pageSize.toString())
|
||||
if (params.code) queryParams.append('code', params.code)
|
||||
if (params.orderByColumn) queryParams.append('orderByColumn', params.orderByColumn)
|
||||
if (params.isAsc) queryParams.append('isAsc', params.isAsc)
|
||||
if (params.pageNum) queryParams.append('pageNum', params.pageNum.toString())
|
||||
if (params.pageSize) queryParams.append('pageSize', params.pageSize.toString())
|
||||
|
||||
const url = `${API_BASE_URL}/app/owArticle/list?${queryParams.toString()}`
|
||||
const url = `${API_BASE_URL}/app/owArticle/list?${queryParams.toString()}`
|
||||
|
||||
const response = await fetch(url, {
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
},
|
||||
})
|
||||
const response = await fetch(url, {
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
},
|
||||
})
|
||||
|
||||
if (!response.ok) {
|
||||
throw new Error(`HTTP error! status: ${response.status}`)
|
||||
if (!response.ok) {
|
||||
throw new Error(`HTTP error! status: ${response.status}`)
|
||||
}
|
||||
|
||||
const result: ArticleListResponse = await response.json()
|
||||
return result
|
||||
} catch (error) {
|
||||
console.error('获取文章列表失败:', error)
|
||||
throw error
|
||||
}
|
||||
|
||||
const result: ArticleListResponse = await response.json()
|
||||
return result
|
||||
} catch (error) {
|
||||
console.error('获取文章列表失败:', error)
|
||||
throw error
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -70,46 +70,46 @@ export const fetchArticleList = async (params: ArticleListParams = {}): Promise<
|
|||
* @returns Promise<Record<string, Article[]>>
|
||||
*/
|
||||
export const fetchRecommendedArticles = async (
|
||||
types: string[] = ['solution', 'developKnowledge', 'industryTrend'],
|
||||
pageSize: number = 5
|
||||
types: string[] = ['solution', 'developKnowledge', 'industryTrend'],
|
||||
pageSize: number = 5
|
||||
): Promise<Record<string, Article[]>> => {
|
||||
try {
|
||||
const result: Record<string, Article[]> = {}
|
||||
try {
|
||||
const result: Record<string, Article[]> = {}
|
||||
|
||||
// 并发获取各类型文章
|
||||
const promises = types.map(async (type) => {
|
||||
const response = await fetchArticleList({
|
||||
code: type,
|
||||
orderByColumn: 'createTime',
|
||||
isAsc: 'descending',
|
||||
pageNum: 1,
|
||||
pageSize: pageSize
|
||||
})
|
||||
return { type, articles: response.data }
|
||||
})
|
||||
// 并发获取各类型文章
|
||||
const promises = types.map(async (type) => {
|
||||
const response = await fetchArticleList({
|
||||
code: type,
|
||||
orderByColumn: 'createTime',
|
||||
isAsc: 'descending',
|
||||
pageNum: 1,
|
||||
pageSize: pageSize
|
||||
})
|
||||
return {type, articles: response.data}
|
||||
})
|
||||
|
||||
const responses = await Promise.all(promises)
|
||||
const responses = await Promise.all(promises)
|
||||
|
||||
// 整理结果
|
||||
responses.forEach(({ type, articles }) => {
|
||||
result[type] = articles
|
||||
})
|
||||
// 整理结果
|
||||
responses.forEach(({type, articles}) => {
|
||||
result[type] = articles
|
||||
})
|
||||
|
||||
return result
|
||||
} catch (error) {
|
||||
console.error('获取推荐文章失败:', error)
|
||||
throw error
|
||||
}
|
||||
return result
|
||||
} catch (error) {
|
||||
console.error('获取推荐文章失败:', error)
|
||||
throw error
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章类型映射
|
||||
*/
|
||||
export const ARTICLE_TYPE_MAP: Record<string, string> = {
|
||||
'solution': '解决方案',
|
||||
'developKnowledge': '开发知识',
|
||||
'industryTrend': '行业动态',
|
||||
'aboutUs': '关于我们'
|
||||
'solution': '解决方案',
|
||||
'developKnowledge': '开发知识',
|
||||
'industryTrend': '行业动态',
|
||||
'aboutUs': '关于我们'
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -118,7 +118,7 @@ export const ARTICLE_TYPE_MAP: Record<string, string> = {
|
|||
* @returns 中文名称
|
||||
*/
|
||||
export const getArticleTypeName = (code: string): string => {
|
||||
return ARTICLE_TYPE_MAP[code] || '未知类型'
|
||||
return ARTICLE_TYPE_MAP[code] || '未知类型'
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -126,37 +126,37 @@ export const getArticleTypeName = (code: string): string => {
|
|||
* @returns 文章API相关方法
|
||||
*/
|
||||
export const useArticleApi = () => {
|
||||
/**
|
||||
* 获取文章列表
|
||||
* @param params 查询参数
|
||||
* @returns Promise<Article[]>
|
||||
*/
|
||||
const getArticles = async (params: ArticleListParams = {}): Promise<Article[]> => {
|
||||
try {
|
||||
const response = await fetchArticleList(params)
|
||||
return response.data || []
|
||||
} catch (error) {
|
||||
console.error('获取文章列表失败:', error)
|
||||
return []
|
||||
/**
|
||||
* 获取文章列表
|
||||
* @param params 查询参数
|
||||
* @returns Promise<Article[]>
|
||||
*/
|
||||
const getArticles = async (params: ArticleListParams = {}): Promise<Article[]> => {
|
||||
try {
|
||||
const response = await fetchArticleList(params)
|
||||
return response.data || []
|
||||
} catch (error) {
|
||||
console.error('获取文章列表失败:', error)
|
||||
return []
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取推荐文章(按类型分组)
|
||||
* @param types 文章类型数组
|
||||
* @param pageSize 每页数量
|
||||
* @returns Promise<Record<string, Article[]>>
|
||||
*/
|
||||
const getRecommendedArticles = async (
|
||||
types: string[] = ['solution', 'developKnowledge', 'industryTrend'],
|
||||
pageSize: number = 5
|
||||
): Promise<Record<string, Article[]>> => {
|
||||
return await fetchRecommendedArticles(types, pageSize)
|
||||
}
|
||||
/**
|
||||
* 获取推荐文章(按类型分组)
|
||||
* @param types 文章类型数组
|
||||
* @param pageSize 每页数量
|
||||
* @returns Promise<Record<string, Article[]>>
|
||||
*/
|
||||
const getRecommendedArticles = async (
|
||||
types: string[] = ['solution', 'developKnowledge', 'industryTrend'],
|
||||
pageSize: number = 5
|
||||
): Promise<Record<string, Article[]>> => {
|
||||
return await fetchRecommendedArticles(types, pageSize)
|
||||
}
|
||||
|
||||
return {
|
||||
getArticles,
|
||||
getRecommendedArticles,
|
||||
getArticleTypeName
|
||||
}
|
||||
return {
|
||||
getArticles,
|
||||
getRecommendedArticles,
|
||||
getArticleTypeName
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ const loading = ref(true)
|
|||
const error = ref('')
|
||||
|
||||
// API基础地址
|
||||
const API_BASE_URL = 'http://192.168.2.26:4101'
|
||||
const API_BASE_URL = 'http://192.168.2.77:4101'
|
||||
|
||||
// 获取文章详情
|
||||
const fetchArticle = async (id: string) => {
|
||||
|
|
@ -98,7 +98,7 @@ watch(() => route.params.id, (newId) => {
|
|||
|
||||
<template>
|
||||
<view>
|
||||
<NewsNew :article-data="articleData" :loading="loading" :error="error" />
|
||||
<NewsNew :article-data="articleData" :error="error" :loading="loading"/>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user