数字海洋 - 看起来您正在尝试使用TypeScript



在过去的2天里,我一直在努力让我的项目建立在一个DO应用程序上。有趣的是,在项目中没有任何改变,它突然开始出现错误:

[2023-04-06 09:03:02] │ It looks like you're trying to use TypeScript but do not have the required package(s) installed.
[2023-04-06 09:03:02] │ 
[2023-04-06 09:03:02] │ Please install typescript by running:
[2023-04-06 09:03:02] │ 
[2023-04-06 09:03:02] │         yarn add --dev typescript
[2023-04-06 09:03:02] │ 
[2023-04-06 09:03:02] │ If you are not trying to use TypeScript, please remove the tsconfig.json file from your package root (and any TypeScript files in your pages directory).
[2023-04-06 09:03:02] │ 

我们所要做的就是重新启动(强制重新部署和构建),然后它开始抛出这个错误。

与此同时,我们的暂存分支工作得很好,两者之间的包版本是相同的。

"dependencies": { 
"next": "^12.0.7", 
"react": "17.0.2", 
"react-dom": "17.0.2", 
},
"devDependencies": { 
"@types/node": "^18.11.9",
"@types/react": "^18.0.33", 
"ts-node": "^10.9.1",
"typescript": "^5.0.3", 
}

注:我甚至试图恢复到以前已经成功部署的旧的工作提交,但它也失败了。

问题是你可能在你的环境变量中手动设置NODE_ENVproduction,这导致yarn忽略你的devDependencies,只安装你的主要依赖(因此为什么它不能找到typescript,通常安装为devDependency)

如果你需要一个构建时的环境变量,让你的捆绑器知道它是一个生产环境,那么我建议使用不同的名称,如APP_ENV或类似的东西,这样纱线不会看它,它将始终包括你的devDependencies,而构建你的应用程序在DO应用程序平台。

对于运行时,您可以使用cross-envNODE_ENV设置为production

最新更新