在TSX文件中:Property' createRef'在类型' typeof React'中不存在

时间:2018-05-15 10:21:25

标签: javascript reactjs typescript jsx tsx

我需要组件的引用。刚刚从jsx转移到tsx,无法找到解决此问题的方法。

其他解决方法是使用查询选择器,但这并不是我认为做出反应的好方法。

这是构造函数

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);
}

2 个答案:

答案 0 :(得分:12)

您似乎有@types/react的过时版本。最新版本16.3.14具有createRef的类型定义。

答案 1 :(得分:0)

在我的Typescript代码库中,我不得不更新react-dom类型:

yarn upgrade @types/react-dom^16.3.0