npm pack create-app --dry-run | findstr env tar -tzf create-app-1.4.0.tgz | findstr env cp .env.example .env.local
用 create-app 生成项目后直接 npm run dev,报 Error: ENOENT: no such file or directory, open '.../.env.local',同一条命令在同事机器上正常。先别急着动参数,把报错原文和时间点记下来,顺序反了容易白折腾。
原因不复杂,模板里的 .env.example 在打包时被 .npmignore 排除,生成器又只复制已存在的文件,.env.local 从来没被创建。启动脚本默认读这个文件,缺了就抛 ENOENT。
围绕「脚手架启动报错」排查时,命令行跑一遍比在面板里点十次有用,面板会替你做掉不少隐式操作。备份不是备了就行,恢复一次才算数,很多备份文件打开才发现是空的。
接口问题先分清是没发出去、发出去了没收到,还是收到了处理失败。
处理上按这个顺序:确认模板包里是否真的带 .env.example 用 npm pack 后解包看;生成完成后由生成器主动写一份默认配置 不依赖复制;启动脚本读配置时给缺省值并打印提示;把生成后能否直接跑起来加进 CI 的冒烟用例。
改完只确认一件事:在空目录重新生成项目 不手工改任何文件 npm run dev 能起到监听 3000 端口。
