综合练习
写一个 import 脚本 CLI。
40 分钟
综合练习
把本 track 串起来:写一个 track-import CLI——交互或 flag 读入 JSON/CSV,参数校验,可选写入 PostgreSQL 或 MongoDB,支持 dry-run 与 glob 批处理。目标不是功能炫,而是 可测试、可发布、可交接 的 Node 工程实践。
学习目标
- 独立完成从 nva-intro 到 nva-glob 的交叉引用
- 实践 semver 发包或
npm link本地消费 - 衔接 nodejs-essentials、nestjs-essentials、postgresql-essentials、mongodb-essentials、testing-essentials
任务说明
实现 CLI 包 @you/track-import(名称自定),支持:
track-import run -f data/tracks.json --driver postgres --dry-run
track-import run -f data/*.json --driver mongo
track-import validate -f data/tracks.json
1. 结构与发包(nva-packages、nva-semver)
- ESM、
exports、bin.track-import -
engines.node >= 20 - README:安装、env、示例
2. CLI 与交互(nva-cli、nva-prompts)
-
run/validate子命令 - 无 TTY 时用
--driver/ env,有 TTY 可 prompts 选择 postgres | mongo - stderr 日志、stdout 输出 JSON 摘要(行数、错误列表)