NextJS中getStaticProps所用库应设为常规依赖还是开发依赖?
Next.js中getStaticProps依赖库的package.json配置选择
应该将这个库设为常规依赖(dependencies),原因如下:
- Next.js的
getStaticProps是在静态页面生成(SSG)的构建阶段执行,但构建流程本身依赖该库的存在。多数部署平台在生产构建时会默认执行npm install --production,该命令只会安装dependencies中的包,忽略devDependencies。如果把库放在devDependencies,会导致构建过程中找不到依赖,触发报错。 - 只有仅在本地开发阶段使用的工具(比如ESLint、Prettier、测试框架)才适合放在
devDependencies里。而getStaticProps属于Next.js构建生产页面的核心流程环节,用到的依赖必须被包含在生产构建的依赖集合中。
举个实际场景:如果你用一个Markdown解析库在getStaticProps里转换文档内容生成静态页面,这个解析库就必须放在dependencies里,否则部署时构建会失败。
内容的提问来源于stack exchange,提问作者Evanss
相关产品推荐
相关产品推荐

