stop using ReactDOM.findDOMNode in componentWillUnmount, use refs

This commit is contained in:
Michael Telatynski 2019-12-23 12:24:49 +00:00
parent a13ee490e8
commit 17f5849985
3 changed files with 26 additions and 12 deletions

View file

@ -25,7 +25,6 @@ import shouldHideEvent from '../../shouldHideEvent';
import React, {createRef} from 'react';
import createReactClass from 'create-react-class';
import ReactDOM from 'react-dom';
import PropTypes from 'prop-types';
import classNames from 'classnames';
import {Room} from "matrix-js-sdk";
@ -461,7 +460,7 @@ module.exports = createReactClass({
componentDidUpdate: function() {
if (this._roomView.current) {
const roomView = ReactDOM.findDOMNode(this._roomView.current);
const roomView = this._roomView.current;
if (!roomView.ondrop) {
roomView.addEventListener('drop', this.onDrop);
roomView.addEventListener('dragover', this.onDragOver);
@ -505,7 +504,7 @@ module.exports = createReactClass({
// is really just for hygiene - we're going to be
// deleted anyway, so it doesn't matter if the event listeners
// don't get cleaned up.
const roomView = ReactDOM.findDOMNode(this._roomView.current);
const roomView = this._roomView.current;
roomView.removeEventListener('drop', this.onDrop);
roomView.removeEventListener('dragover', this.onDragOver);
roomView.removeEventListener('dragleave', this.onDragLeaveOrEnd);