use*_*514 5 typescript reactjs
我有一些代码,其中包含一个反应表单,其中包含类似以下内容:
<input id="region"></input>
Run Code Online (Sandbox Code Playgroud)
我有一个通过单击按钮调用的函数,我想获取 id“region”的值。
我已经看到据说我可以做这样的事情:
let test : string = <HTMLInputElement>document.getElementById(region).value;
Run Code Online (Sandbox Code Playgroud)
但我可以验证8种方法到周日行不通。如果我尝试这样做,我会收到语法错误,提示缺少逗号。
那么有没有办法做到这一点呢?我缺少什么?把我当白痴吧,因为我只用了 48 小时打字。
我假设您由于标签而使用 React,因此我假设以下代码位于 tsx 文件中。
let test : string = <HTMLInputElement>document.getElementById(region).value;
Run Code Online (Sandbox Code Playgroud)
您不能在 TSX 文件中使用箭头括号强制转换,因为 TypeScript 会假设您正在尝试使用 React 元素。您必须改为使用as强制转换的形式:
let test : string = (document.getElementById(region) as HTMLInputElement).value;
Run Code Online (Sandbox Code Playgroud)
Mor*_*ish -1
Typescript 是 Javascript 的超集。每个有效的 Javascript 代码都是有效的 Typescript 代码。
如果您尝试做的事情没有按预期进行,则可能是出于其他原因。
| 归档时间: |
|
| 查看次数: |
13926 次 |
| 最近记录: |