चेकबॉक्स ईवेंट हैंडलर में `माउसईवेंट` सामान्य क्यों नहीं है?


97

मेरे पास एक चेकबॉक्स TSX (JSX) तत्व है:

<input type="checkbox" name={i.toString()} onClick={this.handleCheckboxClick} />

वीएस कोड की मदद से मुझे पता है कि इनपुट पैरामीटर का प्रकार this.handleCheckboxClickहै MouseEvent<HTMLInputElement>। इसलिए मैंने इसे लागू किया:

private handleCheckboxClick(event: MouseEvent<HTMLInputElement>) {
    ...
}

फिर मुझे एक त्रुटि मिलती है [ts] Type 'MouseEvent' is not generic.जैसा कि नीचे दी गई छवि में दिखाया गया है:

यहां छवि विवरण दर्ज करें

मेरे पैकेज का संस्करण:

"@types/react": "^15.0.29",
"@types/react-dom": "^15.5.0",
"react": "^15.6.1",
"react-dom": "^15.6.1",
"typescript": "^2.3.4",

ऐसा क्यों है?

जवाबों:


264

आप शायद DOM का उपयोग कर रहे हैं MouseEventReact.MouseEvent<HTMLInputElement>इसके बजाय प्रयोग करके देखें ।


2
मेरे लिए काम नहीं कर रहा है, मैं:type: "checkbox" onChange: (e: MouseEvent<HTMLInputElement>) => void; defaultChec...' is not assignable to type 'InputHTMLAttributes<HTMLInputElement>'
Kokodoko

@ कोकोडको क्या आपने कभी इसे ठीक किया?
सुपरब्यूडरपॉपर


3

आप माउसइवेंट के बजाय सिंटैटिक ईवेंट का उपयोग कर सकते हैं

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.