|
|
|
|
|
by Dylan16807
1096 days ago
|
|
Well I haven't ever used next.js in particular, but if I go open a .tsx file and add <input type="file" onChange={[final vanilla version code]} />, it works fine. t gets inferred as `EventTarget & HTMLInputElement` The only error is that "myImageElem" isn't defined by the snippet, which is to be expected. If I insert your first snippet, it complains that (e:Event) isn't the right type, but (e) or (e:any) makes the whole thing happy (except "myImageElem"). If I remove the imprecise "Event" typing on e, then your first snippet can be simplified to: let t = e.target;
if (t.files && t.files[0]) {
If I keep (e: Event), then the code with "instanceof" works, as does: let t = e.target as HTMLInputElement;
if (t.files && t.files[0]) {
|
|
It's the ID of a DOM element. No need to define it (for me). But anyway still good I will try your code, thanks.