Files
test-repo/docs/index.md
T

69 lines
1.5 KiB
Markdown

---
layout: home
---
<script setup>
import { onMounted } from 'vue'
import { withBase } from 'vitepress'
const WELCOME_SEEN_KEY = 'easy-vibe-welcome-seen'
onMounted(() => {
// 语言映射:浏览器语言代码 -> 网站路径
const langMap = {
'zh': '/zh-cn/',
'zh-cn': '/zh-cn/',
'zh-tw': '/zh-tw/',
'zh-hk': '/zh-tw/',
'en': '/en/',
'en-us': '/en/',
'en-gb': '/en/',
'ja': '/ja-jp/',
'ja-jp': '/ja-jp/',
'ko': '/ko-kr/',
'ko-kr': '/ko-kr/',
'es': '/es-es/',
'es-es': '/es-es/',
'fr': '/fr-fr/',
'fr-fr': '/fr-fr/',
'de': '/de-de/',
'de-de': '/de-de/',
'ar': '/ar-sa/',
'ar-sa': '/ar-sa/',
'vi': '/vi-vn/',
'vi-vn': '/vi-vn/'
}
// 获取浏览器语言
const browserLang = navigator.language.toLowerCase()
const browserLangShort = browserLang.split('-')[0]
// 确定目标语言
let targetLang = langMap[browserLang] || langMap[browserLangShort]
// 如果没有匹配的语言,默认使用中文
if (!targetLang) {
targetLang = '/zh-cn/'
}
const targetPath = withBase(targetLang)
let hasSeenWelcome = false
try {
hasSeenWelcome = window.localStorage.getItem(WELCOME_SEEN_KEY) === '1'
} catch {
hasSeenWelcome = false
}
if (!hasSeenWelcome) {
window.location.replace(
withBase(`/welcome/?next=${encodeURIComponent(targetPath)}`)
)
return
}
// 立即跳转,不显示任何内容
// 使用 withBase 自动处理 base 路径(根据 config.mjs 中的配置)
window.location.replace(targetPath)
})
</script>