reactjs - 如果有 Typescript 錯誤,如何停止 Next.js 的編譯?
我已經設定了 Next.js 13.1.1 和 Typescript 4.9.4 的專案。這裡有一個簡單的 Button 組件,它有必要的屬性:
interface BannerProps {
isSidebarOpen: boolean
}
export const Banner = (props: BannerProps) => {
return (
<div>
<button>
{props.isSidebarOpen ? <CloseIcon /> : <HamburgerIcon />}
</button>
</div>
)
}
如果我忘了將 isSidebarOpen 傳給 <Banner />,我的 IDE 會標示錯誤:
Property 'isSidebarOpen' is missing in type '{}' but required in type 'BannerProps'.
儘管如此,Next.js 應用程式仍然可以編譯。這意味著我在最近新增必填 props 後,可以忘記在許多地方傳遞 props,並浪費時間找出意外行為的原因。
我找不到可以讓 Next.js 在存在 TypeScript 錯誤時停止編譯的有效配置。這是一個合理的期望嗎?這個回答中的 noEmitOnError 並沒有改變這個行為。也嘗試過這個配置,但沒有成功。
我最接近的方法是使用 tsc --noEmit,但我不想手動運行腳本並在錯誤累積後去追蹤它們。