From e9aca9edde6a313589080e7289b301977db98337 Mon Sep 17 00:00:00 2001
From: Whbbit1999 <60510247+Whbbit1999@users.noreply.github.com>
Date: Thu, 9 Oct 2025 19:47:45 +0800
Subject: [PATCH] docs(zh/typed-routes): Sync translation of typed-routes page.
(#2564)
The current Chinese version of typed-routes is somewhat outdated. This
commit synchronizes the translation of this file with the latest content
from the English version.
---
.../docs/zh/guide/advanced/typed-routes.md | 76 +++++++++++++++++--
1 file changed, 71 insertions(+), 5 deletions(-)
diff --git a/packages/docs/zh/guide/advanced/typed-routes.md b/packages/docs/zh/guide/advanced/typed-routes.md
index 8cb7edcf..6600b9b5 100644
--- a/packages/docs/zh/guide/advanced/typed-routes.md
+++ b/packages/docs/zh/guide/advanced/typed-routes.md
@@ -1,11 +1,77 @@
-# ç±»ååè·¯ç± (v4.1.0+)
+# ç±»ååè·¯ç±
-::: danger â¼ï¸ å®éªæ§åè½
+
-ä» v4.1.0 å¼å§ï¼æä»¬å¼å
¥ä¸ä¸ªæ°çåè½ï¼ç§°ä¸ºç±»ååè·¯ç±ãè¿ä¸ª**å®éªæ§**åè½éè¿ Vite/webpack/Rollup æä»¶å¯ç¨ã
+å¯ä»¥ä¸ºè·¯ç±é
ç½®ä¸ä¸ªç±»ååçæ å°è¡¨ã è½ç¶å¯ä»¥æå¨å®ç°ï¼ä½æ´æ¨èä½¿ç¨ [unplugin-vue-router](https://github.com/posva/unplugin-vue-router) æä»¶æ¥èªå¨çæè·¯ç±åå
¶ç±»åã
-
+## æå¨é
ç½®
+
+以䏿¯ä¸ä¸ªæå¨é
置类ååè·¯ç±ç示ä¾ï¼
+
+```ts
+// è¦ä¸ºä½ çè·¯ç±æ·»å ç±»åï¼éè¦ä» vue-router 导å
¥ `RouteRecordInfo` ç±»å
+import type { RouteRecordInfo } from 'vue-router'
+
+// å®ä¹ä¸ä¸ªè·¯ç±ç interface
+export interface RouteNamedMap {
+ // æ¯ä¸ä¸ªé®é½æ¯ä¸ä¸ªåç§°
+ home: RouteRecordInfo<
+ // è¿éæä»¬çåç§°æ¯ç¸åç
+ 'home',
+ // è¿æ¯è·¯å¾ï¼å®ä¼åºç°å¨èªå¨è¡¥å
¨ä¸
+ '/',
+ // è¿äºæ¯åå§åæ°ï¼å¯ä»¥ä¼ éç» router.push() å RouterLink ç "to" 屿§ï¼
+ // å¨è¿ç§æ
åµä¸ï¼ä¸å
许æä»»ä½åæ°
+ Record,
+ // è¿äºæ¯æ åååçåæ°ï¼å³éè¿ `useRoute()` è·åå°çåæ°ï¼
+ Record,
+ // è¿æ¯ä¸ä¸ªææåè·¯ç±åç§°çèåç±»åï¼è卿¬ä¾ä¸ï¼æ²¡æåè·¯ç±
+ never
+ >
+ // 对æ¯ä¸æ¡è·¯ç±é½è¦éå¤è¿ä¸ªæ¥éª¤â¦â¦
+ // 注æï¼ä½ å¯ä»¥éæä¸ºå®ä»¬å½å
+ 'named-param': RouteRecordInfo<
+ 'named-param',
+ '/:name',
+ { name: string | number }, // å
许æ¯åç¬¦ä¸²ææ°å
+ { name: string }, // ä½ä» URL è·åæ¶å§ç»ä¸ºå符串
+ 'named-param-edit'
+ >
+ 'named-param-edit': RouteRecordInfo<
+ 'named-param-edit',
+ '/:name/edit',
+ { name: string | number }, // æä»¬è¿éè¦å
å«ç¶çº§è·¯ç±çåæ°
+ { name: string },
+ never
+ >
+ 'article-details': RouteRecordInfo<
+ 'article-details',
+ '/articles/:id+',
+ { id: Array },
+ { id: string[] },
+ never
+ >
+ 'not-found': RouteRecordInfo<
+ 'not-found',
+ '/:path(.*)',
+ { path: string },
+ { path: string },
+ never
+ >
+}
+
+// æåï¼ä½ éè¦æè¿ä»½è·¯ç±æ å°è¡¨æ©å±å° Vue Router çç±»åå®ä¹ä¸
+declare module 'vue-router' {
+ interface TypesConfig {
+ RouteNamedMap: RouteNamedMap
+ }
+}
+```
+
+::: tip
+
+è¿ç§æ¹å¼ç¡®å®ç¹çä¸å®¹æåºéãæ£å 妿¤ï¼å¼ºçæ¨èä½¿ç¨ [unplugin-vue-router](https://github.com/posva/unplugin-vue-router) æ¥èªå¨çæè·¯ç±åç±»åã
-[æ¥ç v4.1 çæ¬çåå¸è¯´æ](https://github.com/vuejs/router/releases/tag/v4.1.0) è·åæå
³æ¤åè½çæ´å¤ä¿¡æ¯ã[æ¥çæä»¶](https://github.com/posva/unplugin-vue-router) ç GitHub ä»åºè·åå®è£
说æåææ¡£ã
+:::
--
2.47.3