Мне нужно создать режим комментария / предложения только в текстовом редакторе на основе draftJ.У меня есть блок комментариев (очень похожий на ссылку) на встроенной панели инструментов, когда пользователь выбирает текст.Основываясь на состоянии commentOnly, я включаю только встроенный комментарий на панели инструментов.
Если я использую readOnly = true, панель инструментов после выбора содержимого не появится.Итак, я позволил readOnly быть правдой.Но пользователь все еще может поместить курсор в любом месте в редакторе и ввести.Каждое действие продолжает вызывать onChange fn.Если я отключу onChange fn, основываясь на состоянии commentOnly, то комментарий не будет отображаться, когда я нажму на закомментированный текст.
Итак, как мне запретить любому пользователю вводить что-либо в редакторе, но все же позволить им выбратьтекст и комментарий к нему?
Любая помощь приветствуется.Спасибо.
Я уже пробовал onChange = {! This.state.commentOnly?this.onChange: this.doNothing} и onKeypress = {(e) => {! this.state.commentOnly?e.preventDefault (): this.doNothing}}
Внутри конструктора:
this.onChange = (editorState, callback = null) => {
if (this.state.editorEnabled || this.state.commentOnly) {
this.setState({ editorState }, () => {
if (callback) {
callback();
}
});
}
};
this.doNothing = (editorState, callback = null) => {
}