草案JS从HTML中识别img

时间:2016-12-17 04:50:40

标签: javascript reactjs draftjs

我正在使用Facebook的draft-js创建所见即所得。我正在尝试使用原生convertFromHtml将HTML转换为editorState。但它没有识别img标签。

import draftJs from 'draft-js'
const blocksFromHTML = convertFromHTML("<img src='some/img.png' />", draftJs.getSafeBodyFromHTML, draftJs.DefaultDraftBlockRenderMap);
const contentState = draftJs.ContentState.createFromBlockArray(blocksFromHTML);
editorState = draftJs.EditorState.createWithContent(contentState);

这样做会完全删除图像。有任何想法吗?

2 个答案:

答案 0 :(得分:0)

Example of using convertFromHTML in draft-js 0.10.0应该有效(我的代码有点简化):

      const sampleMarkup = '<img src="image.png" />';

      const blocksFromHTML = convertFromHTML(sampleMarkup);
      const state = ContentState.createFromBlockArray(
        blocksFromHTML.contentBlocks,
        blocksFromHTML.entityMap,
      );

      this.state = {
        editorState: EditorState.createWithContent(state),
      };

答案 1 :(得分:0)

米哈伊尔·哈佐夫(Mikhail Khazov)解决方案部分正确,我必须在img标签中添加img标签,这应该可以解决问题