# TypeScript / JavaScript 练习区 本目录是 TS/JS 的学习 / 练手代码。与 Go 那边共用一个 module 不同,这里**每个实验是独立的 npm 项目**(各自的 `package.json`、lock 文件)。 ## 约定 - **每个叶子目录 = 一个独立实验**:自带 `package.json`,依赖自行管理。 - 多个实验并存互不冲突,框架和版本可以各不相同(一个 Astro 4、一个 Astro 5 都行)。 - `node_modules/`、构建产物(`dist/`、`.astro/` 等)已在根 `.gitignore` 忽略,不会提交。 ## 主题目录 | 目录 | 放什么 | |---|---| | `basics/` | 语法基础、类型系统、ES 新特性 | | `web/` | 前端框架:Astro、Vite 等 | | `node/` | Node.js 后端练习(http、fs、CLI…) | | `testing/` | 测试机制(Vitest、Playwright…) | | `project/` | 完整小项目(多文件) | > 主题目录可随时增删。写新实验时挑最贴的主题,在里面建一个新子目录即可。 ## 新建一个 Astro 实验 ```bash cd ts/web/astro npm create astro@latest my-lab -- --template basics --no-git --install cd my-lab npm run dev ``` > `my-lab` 换成实验名;想完全交互式地选模板/TypeScript 严格度,去掉 `--` 后面的参数即可。