Reactjs 如何在typescript中执行document.getElementById()之类的操作?
我有一些代码,其中包含一个react表单,其中包含如下内容:Reactjs 如何在typescript中执行document.getElementById()之类的操作?,reactjs,typescript,Reactjs,Typescript,我有一些代码,其中包含一个react表单,其中包含如下内容: 我有一个通过点击按钮调用的函数,我想得到id“region”的值 我已经看到我可以做这样的事情: let test:string=document.getElementById(region.value); 但是我可以验证8种到星期天的方法不起作用。如果我尝试这样做,就会出现语法错误,说逗号丢失了 有没有办法做到这一点?我错过了什么?把我当白痴看待,因为我只使用了48小时的typescript。typescript是Javasc
我有一个通过点击按钮调用的函数,我想得到id“region”的值
我已经看到我可以做这样的事情:
let test:string=document.getElementById(region.value);
但是我可以验证8种到星期天的方法不起作用。如果我尝试这样做,就会出现语法错误,说逗号丢失了
有没有办法做到这一点?我错过了什么?把我当白痴看待,因为我只使用了48小时的typescript。typescript是Javascript的超集。每个有效的Javascript代码都是有效的Typescript代码
如果您试图执行的操作未按预期工作,则是由于另一个原因。我假设您使用的是React,因为标记,因此我假设以下代码位于tsx文件中
let test : string = <HTMLInputElement>document.getElementById(region).value;
您必须在react中使用ref:
然后在函数中调用它。
像这样
private regioninput: HTMLInputElement;
constructor(props) {
super(props);
this.regioninput = null;
this.setregionInputRef = element => {
this.stepInput = element;
};
}
您的元素更改:
<input type="text" ref={this.setregionInputRef} />
只有在代码中输入特定的typescript行时,才会出现语法错误。如果我把它删掉/注释掉,它会正常工作……那么你能再添加一些上下文吗?因为这显然不是一个打字稿的问题…这是一个打字稿的问题。OP省略了他们代码中的一个关键部分。缺少键入与他所遇到的错误不一致。但是,在参数中缺少“
围绕区域
。请注意,在React中,与Angular和其他中一样,通常不使用DOM获取值;您将值绑定到处于状态的对象(请参阅)。
<input type="text" ref={this.setregionInputRef} />