Возвращение черновика JS html в родительский компонент - PullRequest
1 голос
/ 11 марта 2020

Я пытаюсь отобразить ввод моего чернового редактора в родительский компонент.

До сих пор я использовал модуль draft- js -utils для генерации HTML из моего черновика JS редактора, и я могу перенести это значение в мой родительский компонент.

Мои проблемы заключаются в том, что при отображении этого значения в родительском компоненте оно не отображается как HTML, но в виде строки HTML. Должен ли я отправлять что-то еще родителям?

const Parent = () => {

  const [currentState, setCurrentState] = useState('')

  const _returnHTMLPicker = (v) => {
    return(v)
  }

  return(
    <div>
      <Child _returnHTMLPicker={_returnHTMLPicker}/>
      {returnHTML}
    </div>
  )
}

class MyEditor extends React.Component {
  constructor(props) {
    super(props);
    this.state = {editorState: EditorState.createEmpty()};
    this.onChange = editorState => {
      this.setState({editorState});
      this.props._currentReturnedHTML(stateToHTML(this.state.editorState.getCurrentContent()));
    }
  }

  [...]
}

1 Ответ

0 голосов
/ 17 марта 2020

stateToHTML возвращает строку, содержащую HTML. Если вы хотите отобразить HTML в браузере, компоненту, отображающему его, необходимо использовать dangerouslySetInnerHTML, который преобразует его в объекты DOM, которые браузер будет отображать так, как вы ожидаете.

...