Перетащите текст в редактор DraftJS - PullRequest
0 голосов
/ 04 декабря 2018

Это может быть глупый вопрос, но я не могу понять, как использовать Draft.js и получить текст, который я перетаскиваю для правильного удаления.

Это раздел документации, который у меня естьбыло следующее (handleDrop): https://draftjs.org/docs/api-reference-editor.html

Во-первых, я использую DraftJS, как это в моем компоненте React:

<Editor editorState={this.state.editorState} onChange={this.onControlChanged} handleDrop={this.handleDrop}></Editor>

Затем, когда он меняется, это то, что срабатывает:

onControlChanged = async (editorState) => {
    this.setState({
        editorState: editorState
    });
}

У меня также есть этот фрагмент кода, который устанавливает перенос данных, который я хочу отбросить:

dragField(e: React.DragEvent<HTMLDivElement>, field: Field) {
    e.dataTransfer.setData(
        "text/html",
        '[-' + field.text + '-]'
    );
    return false;
}

Теперь, это часть, в которой я не уверен - но не могу получить четкую документациюо том, как точно использовать это:

handleDrop = (selectionState, dataTransfer, type) => {
    this.setState(prevState => ({
        ...prevState,
        editorState: EditorState.push(prevState.editorState, selectionState, 'insert-fragment')
    }));
}

И это, очевидно, не очень нравится это ...

Есть ли где-то еще документация, на которую я могу сослаться, или кто-нибудь знает какЯ могу / должен реализовать это?

...