में एनम्स की तुलना कैसे करें टाइपस्क्रिप्ट में, मैं enum मान वाले दो चर की तुलना करना चाहता हूं। यहाँ मेरी कम से कम कोड उदाहरण है:टाइपस्क्रिप्ट
enum E {
A,
B
}
let e1: E = E.A
let e2: E = E.B
if (e1 === e2) {
console.log("equal")
}
जब साथ tsc
(v 2.0.3) मैं निम्नलिखित त्रुटि मिलती है संकलन: ==
, !==
और !=
साथ
TS2365: Operator '===' cannot be applied to types 'E.A' and 'E.B'.
ही। मैंने const
कीवर्ड जोड़ने का प्रयास किया लेकिन ऐसा कोई प्रभाव नहीं पड़ता है।
4.19.3 The <, >, <=, >=, ==, !=, ===, and !== operators
These operators require one or both of the operand types to be assignable to the other. The result is always of the Boolean primitive type.
कौन सा (मुझे लगता है कि) त्रुटि बताते हैं: TypeScript spec निम्नलिखित कहते हैं। लेकिन मैं इसे कैसे प्राप्त कर सकता हूं?
साइड नोट
मैं atom-typescript साथ एटम संपादक का उपयोग कर रहा हूँ, और मैं अपने संपादक में किसी भी त्रुटि/चेतावनी नहीं मिलता है। लेकिन जब मैं उसी निर्देशिका में tsc
चलाता हूं तो मुझे उपरोक्त त्रुटि मिलती है। मैंने सोचा कि उन्हें उसी tsconfig.json
फ़ाइल का उपयोग करना था, लेकिन स्पष्ट रूप से यह मामला नहीं है।
वह मेरे लिए काम नहीं करता जा रहा है के साथ इस
के साथ दो enums तुलना करने में सक्षम था। मुझे एक अपरिभाषित हो रहा है – dave0688