簡體   English   中英

NEXT.JS:由於下一個 lint,部署構建失敗

[英]NEXT.JS: Deployment build failed because of next lint

問題

我正在嘗試使用 Vercel 部署我的 git 存儲庫。 但是我的部署總是因為用於測試的文件中的 lint 錯誤而失敗。

Vercel 文檔說:

默認情況下,Next.js 將為 pages/、components/、lib/ 和 src/ 目錄中的所有文件運行 ESLint。 Vercel 文檔鏈接

所以我將我的_tests文件夾移出我的components文件夾,這有助於本地下一個 linter 運行npm run lint現在運行沒有任何錯誤,如果我是正確的,這應該反映 Vercel 部署構建的 linter。

我的棉絨設置如下:

{
  "extends": "next/core-web-vitals"
}

但是當推送到主分支並部署到 vercel 時,linter 仍然在_test文件夾中的文件上出錯。

文件夾結構

_tests // Here I moved my components and tests I don't want to have errors with as they're unfinished or only tests
.next
components
lib
node_modules
pages
....

本地和 Vercel 上的 lint 進程不應該相同嗎?如果不是,我如何才能像部署構建步驟那樣在本地進行測試? 我錯過了什么? 我查看了所有關於 eslint 的文檔。

首先,我建議您即使在測試中也不要忽視 lint 問題,因為測試是應用程序的一部分。 因此,理想的世界解決方案是解決所有這些 lint 問題並感到高興。

但是如果你仍然想排除一些代碼被檢查,你可以使用ESLint ignorePatterns 配置.eslintrc.json可能如下所示:

{
    "extends": "next/core-web-vitals",
    "ignorePatterns": [
        "_test/**"
    ]
}

或者你可以編寫包含以下內容的.eslintignore文件:

_test/

另一種可能的解決方案是next build命令中關閉 Linter (默認情況下Vercel 使用此命令構建您的應用程序)。 為此,您需要將其添加到您的next.config.js

const nextConfig = {
    ...
    eslint: {
      ignoreDuringBuilds: false,
    },
};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM