Функция сохраняется, даже если она не используется

Ниже приведена функция для удаления вложений из текстового редактора. После однократного вызова с помощью кнопки "X" он вызывается каждый раз, когда вы нажимаете внутри текстовой области. Используемая библиотека редактора - draft.js. Как я могу остановить непреднамеренный вызов removeFiles().

private removeFiles = (id: any) => {
    debugger;
    unmountComponentAtNode(document.getElementById(id));
    document.getElementById(id).remove();
    const newState = this.state;
    newState.uploadFiles.splice(id, 1);
    newState.files.splice(id, 1);
    newState._attachments.splice(id, 1);
    this.setState(newState);
}
public fileSelectEvent = (filesArray: any) => {
    debugger;
    var files = (document.getElementById('fileInput') as HTMLInputElement).files;
    var editorElement = document.getElementsByClassName('DraftEditor-editorContainer');
    if (!(!filesArray)) {
        this.readFiles(filesArray, false);
        for (let i = 0; i < files.length; i++) {
            var newDiv = document.createElement('div');
            console.log(files[i].name, '{files[i].name}----');
            newDiv.innerHTML = `<div class=${styles.fileBox}  id=${i}>
            <span>${files[i].name}</span>
            <h5 ${onclick = () => this.removeFiles(i)}>X</h5>
            <div>`;
            editorElement[0].appendChild(newDiv);
        }
    }
}

0 ответов

Другие вопросы по тегам