Sto giocando con il dattiloscritto e sto cercando di creare uno script che aggiornerà un elemento p man mano che il testo viene inserito in una casella di input.
Il codice HTML è simile al seguente:
<html>
<head>
</head>
<body>
<p id="greet"></p>
<form>
<input id="name" type="text" name="name" value="" onkeyup="greet('name')" />
</form>
</body>
<script src="greeter.js"></script>
</html>
E il greeter.ts
file:
function greeter(person)
{
return "Hello, " + person;
}
function greet(elementId)
{
var inputValue = document.getElementById(elementId).value;
if (inputValue.trim() == "")
inputValue = "World";
document.getElementById("greet").innerText = greeter(inputValue);
}
Quando compilo con tsc
ottengo il seguente "errore":
/home/bjarkef/sandbox/greeter.ts(8,53): The property 'value' does not exist on value of type 'HTMLElement'
Tuttavia, il compilatore genera un file javascript, che funziona bene in Chrome.
Come mai ricevo questo errore? E come posso ripararlo?
Inoltre, dove posso cercare quali proprietà sono valide su un 'HTMLElement'
secondo dattiloscritto?
Nota che sono molto nuovo su JavaScript e dattiloscritto, quindi potrei mancare qualcosa di ovvio. :)