本文へスキップ
BecomeCoder

TypeScriptのエラー · エラー6

TS2367: This comparison appears to be unintentional ― 比較できない型どうしを比べた

型が重ならない値どうしを === で比べると出ます。値のスペルミスで起こりがちです。

出るコード

const status: "on" | "off" = "on";
if (status === "onn") {   // "onn" はありえない値
}

エラーメッセージ

error TS2367: This comparison appears to be unintentional because the types '"on" | "off"' and '"onn"' have no overlap.

直し方

比較する値を、その型に存在する候補("on""off")にします。スペルミスを疑います。