我需要组件的引用。刚刚从jsx转移到tsx,找不到解决此问题的方法。
其他解决方法是使用查询选择器,但我相信这不是在 react 中做事的好方法。
这是构造函数
constructor(props) {
super(props);
this.state = {
data: initialData,
showNewListForm: false,
whichButtonClicked: undefined,
background: props.background || "#23719f"
};
this.divContainerRef = React.createRef();
console.log("kanban reference : " + React.createRef().current);
this.handleDragStart = this.handleDragStart.bind(this);
this.handleDragEnd = this.handleDragEnd.bind(this);
this.handleLaneDragEnd = this.handleLaneDragEnd.bind(this);
this.handleLaneDragStart = this.handleLaneDragStart.bind(this);
this.onCardAdd = this.onCardAdd.bind(this);
this.onCardClick = this.onCardClick.bind(this);
this.addNewListHandler = this.addNewListHandler.bind(this);
this.containerRefResolver = this.containerRefResolver.bind(this);
this.isBoardPresent = this.isBoardPresent.bind(this);
}
看起来您有一个过时的@types/react
版本。最新版本16.3.14
具有createRef
的类型定义。
在我的 Typescript 代码库中,我必须更新 react-dom 类型:
yarn upgrade @types/react-dom^16.3.0