I have the following React code that works ok in JavaScript:
function handleSubmit(event) {
event.preventDefault()
console.dir(event.target[0].value)
console.dir(event.target.usernameInput.value)'EventTarget'.
console.dir(event.target.elements.usernameInput.value)
}
return (
<form onSubmit={handleSubmit}>
<label htmlFor="usernameInput">Username:</label>
<input id="usernameInput" type="text" onChange={handleChange} />
[...]
I'd like to do the same with TypeScript but I can't access event.target[0], event.target.elements nor event.target.usernameInput, instead I get "Property '0' does not exist on type 'EventTarget'" and "Property 'usernameInput' does not exist on type 'EventTarget'"
This is the ts code:
const handleSubmit = (event: FormEvent<HTMLFormElement>) => {
event.preventDefault()
console.dir(event.target[0].value) // Property '0' does not exist on type 'EventTarget'.
console.dir(event.target.usernameInput.value) // Property 'usernameInput' does not exist on type 'EventTarget'.
console.dir(event.target.elements.usernameInput.value) // Property 'elements' does not exist on type 'EventTarget'.
How can I access any of those properties?