Javascript 使用ref?键入React组件?打字稿

Javascript 使用ref?键入React组件?打字稿,javascript,reactjs,typescript,Javascript,Reactjs,Typescript,所以我有一个参考: someComponent; 而someComponent基本上是一个React组件,看起来像: class SomeComponent<IProps> { getData = () => {}; render() { ...some stuff } } TypeScript不会呼喊getData不存在于上。someComponent 我试过: someComponent:React.reObject 但TypeScrip

所以我有一个参考:

someComponent;
someComponent
基本上是一个React组件,看起来像:

class SomeComponent<IProps> {
   getData = () => {};

   render() {
      ...some stuff
   }
}
TypeScript
不会呼喊
getData
不存在于
上。someComponent

我试过:

someComponent:React.reObject

但TypeScript仍然警告我

编辑:尝试使用createRef,但出现以下错误:

在父组件中声明引用时,需要指定组件的类型:

someComponent=React.createRef();
并将ref传递给渲染组件:


然后可以像这样调用getData:

if(this.someComponent.current!==null){
this.someComponent.current.getData()
}

为了在该组件之外使用getData,您需要将其作为PROP传递,您的ref在哪里?你是说ref作为react概念,还是作为reference的一般概念?我已经创建了一个代码沙盒:谢谢,但是它确实不允许我使用
SomeComponent
作为类型。检查我的编辑。发生什么事了?奇怪,你能分享一个代码沙盒的复制吗?也许可以尝试
createRef
,但在这种情况下不需要。好的,Anthony,问题是SomeComponent与redux连接,并且ref已禁用。然而,我决定断开该组件与存储的连接,它现在似乎工作正常。谢谢
this.someComponent.getData();