fix: make base in astro config work

This commit is contained in:
saicaca
2024-04-29 15:56:28 +08:00
parent 9a3119cab4
commit 410902a767
11 changed files with 37 additions and 26 deletions

View File

@@ -9,19 +9,19 @@ export function pathsEqual(path1: string, path2: string) {
function joinUrl(...parts: string[]): string {
const joined = parts.join('/')
return joined.replace(/([^:]\/)\/+/g, '$1')
return joined.replace(/\/+/g, '/');
}
export function getPostUrlBySlug(slug: string): string | null {
if (!slug) return null
return `/posts/${slug}`
return url(`/posts/${slug}/`)
}
export function getCategoryUrl(category: string): string | null {
if (!category) return null
if (category === i18n(i18nKey.uncategorized))
return '/archive/category/uncategorized'
return `/archive/category/${category}`
return url('/archive/category/uncategorized/')
return url(`/archive/category/${category}/`)
}
export function getDir(path: string): string {
@@ -31,3 +31,7 @@ export function getDir(path: string): string {
}
return path.substring(0, lastSlashIndex + 1)
}
export function url(path: string) {
return joinUrl('', import.meta.env.BASE_URL, path)
}