vs code 本身不内置项目生成能力,需依赖插件补足,最稳定且适配性广的是 project manager 和 yeoman code generator,而真正能“一键生成基础架构代码”的主力是官方出品的 generator code 和社区活跃的 project boilerplate。

用什么插件能快速生成项目脚手架
VSCode 本身不内置项目生成能力,得靠插件补上这一环。目前最稳定、适配性广的是 Project Manager 和 Yeoman Code Generator,但真正能“一键生成基础架构代码”的主力是 Generator Code(官方出品)和社区活跃的 Project Boilerplate。
别装一堆名字花哨的“智能生成器”——很多只是把 create-react-app 或 npm init vite 封了一层 UI,实际没加新逻辑,还容易卡在 Node 版本或权限问题上。
-
Generator Code适合 TypeScript/Node.js 服务端项目,模板来自 VSCode 官方,生成的package.json、tsconfig.json、jest.config.ts等开箱即用,且会自动检测工作区是否已有node_modules -
Project Boilerplate支持自定义 JSON 模板,比如你团队内部有统一的 ESLint + Prettier + Husky 配置路径,可以把它打包成一个boilerplate.json文件,插件就能按需拉取并注入变量(如projectName、author) - 如果用的是
pnpm,务必关掉插件里默认勾选的 “Runnpm installafter generation”,否则会报command not found: npm
为什么生成的 package.json 里 scripts 总少几个
不是插件漏了,是它按语言/框架类型做了最小化裁剪。比如选了 “Express + TypeScript”,插件只写 "dev": "ts-node-dev src/index.ts" 和 "build": "tsc",不会自动加 lint 或 test —— 因为没法判断你用的是 ESLint 还是 TSLint,Jest 还是 Vitest。
解决办法不是换插件,而是手动补全再保存为自定义模板:
- 生成后立刻编辑
package.json,加入你常用的 script:"lint": "eslint . --ext .ts"、"format": "prettier --write ." - 用
Project Boilerplate的 “Save as template” 功能导出当前文件结构,下次新建就直接用这个带完整脚本的版本 - 注意:如果模板里写了
"type": "module",但又用了require(),后续ts-node会报ERR_REQUIRE_ESM,得同步改tsconfig.json的module和moduleResolution
生成完运行 npm run dev 报错找不到模块
大概率是插件生成时跳过了依赖安装,或者安装过程被静默中断了。VSCode 插件调用包管理器属于外部进程,没有错误重试机制,网络抖动或杀毒软件拦截都可能导致 node_modules 不完整。
别急着重启插件,先本地验证:
- 进终端,执行
ls node_modules,如果目录存在但空,说明安装失败;如果根本不存在,插件压根没触发安装 - 手动跑一次
npm install(或pnpm install),观察是否有404 Not Found类错误——常见于私有 registry 配置未同步到插件环境 - 某些插件(如旧版
Generator Code)会读取全局.npmrc,但忽略项目级的.npmrc,这时得在插件设置里显式填入 registry 地址
怎么让生成的代码自动加公司版权头注释
VSCode 插件本身不处理文件头部内容,但可以通过配置 fileheader.customMade 配合 Document This 或原生 file-header 扩展实现。关键点在于时机:必须在文件首次保存前注入,否则生成器已写完文件,再插注释就晚了。
推荐组合方案:
- 装
file-header插件,设置fileheader.configObj,其中beforeAnnotation填入公司标准格式,例如"@Copyright (c) ${nowYear} MyCorp" - 在插件生成项目后,立刻按
Ctrl+Alt+I(Windows)或Cmd+Option+I(Mac)触发头注释插入,它会扫描所有新创建的.ts/.js文件 - 如果要用 Git 钩子统一加头注释,别指望插件——那是
Husky+pretty-quick的事,跟生成阶段无关
最常被忽略的一点:插件生成的 README.md 和 .gitignore 默认不走头注释逻辑,得单独配置 fileheader.supportedFiles 加上 md 和 gitignore 后缀。











