From 5e7c524c37300ae55cfe2d57c2bcc3a5e52142bf Mon Sep 17 00:00:00 2001 From: artsmp0 <129932371+artsmp0@users.noreply.github.com> Date: Thu, 18 Apr 2024 16:44:08 +0800 Subject: [PATCH] chapter: internationalization add zh_CN (#34) * doc: add zh * chore: lint --- packages/.vitepress/config/index.ts | 6 +++++- packages/.vitepress/config/zh.ts | 14 ++++++++++++++ packages/zh/guide/index.md | 22 ++++++++++++++++++++++ packages/zh/guide/setup.md | 3 +++ packages/zh/guide/what-is-vueuse.md | 3 +++ packages/zh/index.md | 26 ++++++++++++++++++++++++++ 6 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 packages/.vitepress/config/zh.ts create mode 100644 packages/zh/guide/index.md create mode 100644 packages/zh/guide/setup.md create mode 100644 packages/zh/guide/what-is-vueuse.md create mode 100644 packages/zh/index.md diff --git a/packages/.vitepress/config/index.ts b/packages/.vitepress/config/index.ts index e2caec8..a7a9069 100644 --- a/packages/.vitepress/config/index.ts +++ b/packages/.vitepress/config/index.ts @@ -3,8 +3,11 @@ import { defineConfig } from 'vitepress' import { sharedConfig } from './shared' import { ja } from './ja' import { en } from './en' +import { zh } from './zh' -export type i18nTheme = Partial['themeConfig']>> +export type i18nTheme = Partial< + NonNullable['themeConfig']> +> export default defineConfig({ ...sharedConfig, @@ -12,6 +15,7 @@ export default defineConfig({ locales: { root: { label: 'English', lang: 'en', themeConfig: { ...en } }, ja: { label: '日本語', lang: 'ja', themeConfig: { ...ja } }, + zh: { label: '简体中文', lang: ' zh', themeConfig: { ...zh } }, // other languages... }, }) diff --git a/packages/.vitepress/config/zh.ts b/packages/.vitepress/config/zh.ts new file mode 100644 index 0000000..a338154 --- /dev/null +++ b/packages/.vitepress/config/zh.ts @@ -0,0 +1,14 @@ +import type { i18nTheme } from '.' + +const nav: i18nTheme['nav'] = [ + { text: '首页', link: '/zh/' }, + { text: '指南', link: '/zh/guide/' }, +] + +const sidebar: i18nTheme['sidebar'] = [ + { text: '快速开始', link: '/zh/guide/' }, + { text: 'VueUse 是什么?', link: '/zh/guide/what-is-vueuse' }, + { text: '初始化', link: '/zh/guide/setup' }, +] + +export const zh: i18nTheme = { nav, sidebar } diff --git a/packages/zh/guide/index.md b/packages/zh/guide/index.md new file mode 100644 index 0000000..b939381 --- /dev/null +++ b/packages/zh/guide/index.md @@ -0,0 +1,22 @@ +## 本书的目的 + +本书的主要目的如下: + +- 学会创建像 VueUse 一样注重"可重用性"、"可维护性"和"可扩展性"的可组合组件 +- 通过实际创建各种功能的可组合组件,深入理解 Vue.js 和 TypeScript +- 阅读开源代码,学习实用的编码技术和最佳实践 + +## 本书的方针 + +- **最小化复现**: 不会完全复现 VueUse 的可组合组件,而是只实现必要的最小功能,以保持代码的可读性。 +- **易于理解**: 即使是复杂的概念,也会以易于理解的方式进行解释,让读者能够顺利学习。使用清晰的解释和具体的例子,帮助读者顺利理解。 +- **实用性**: 注重所学知识在实际开发中的应用价值。不仅关注理论知识,还会重点介绍实践问题解决方法和最佳实践。 + +## 目标读者 + +- 有 Vue.js 使用经验 +- 有 TypeScript 使用经验 + +## 本书的结构 + + diff --git a/packages/zh/guide/setup.md b/packages/zh/guide/setup.md new file mode 100644 index 0000000..260be77 --- /dev/null +++ b/packages/zh/guide/setup.md @@ -0,0 +1,3 @@ +# 环境搭建 + + diff --git a/packages/zh/guide/what-is-vueuse.md b/packages/zh/guide/what-is-vueuse.md new file mode 100644 index 0000000..2ff8e1a --- /dev/null +++ b/packages/zh/guide/what-is-vueuse.md @@ -0,0 +1,3 @@ +# 什么是 VueUse? + + diff --git a/packages/zh/index.md b/packages/zh/index.md new file mode 100644 index 0000000..900a86b --- /dev/null +++ b/packages/zh/index.md @@ -0,0 +1,26 @@ +--- +# https://vitepress.dev/reference/default-theme-home-page +layout: home + +hero: + name: "VueYous" + text: "从头开始打造自己的 VueUse" + tagline: 由 VitePress 驱动 + image: /logo.png + actions: + - theme: brand + text: 快速上手 + link: /zh/guide/ + - theme: alt + text: VueUse 官方 + link: https://vueuse.org/ + +# TODO: Write features +features: + - title: Feature A + details: Lorem ipsum dolor sit amet, consectetur adipiscing elit + - title: Feature B + details: Lorem ipsum dolor sit amet, consectetur adipiscing elit + - title: Feature C + details: Lorem ipsum dolor sit amet, consectetur adipiscing elit +---