草案JS,提到插件渲染为纯文本



我正在实现React的"草稿js";带有提及插件。https://www.draft-js-plugins.com/到目前为止,我已经能够创建编辑器并创建提及标签。我可以使用rest API将提及保存在我的数据库中。以下是我在将内容保存到数据库时所做的操作:

const contentState = this.state.MyInput.getCurrentContent();
const raw = convertToRaw(contentState);
const data =  JSON.stringify(raw, null, 2);

在此之后,我将数据传递给API。到目前为止,它运行良好,现在当我尝试从数据库中检索数据时。我使用以下步骤

handlePostDisplay = (post) => {
const savedData = JSON.parse(post.body)
if (savedData !== null) {
const contentState = convertFromRaw(savedData);
const newEditorState = EditorState.createWithContent(contentState);
return newEditorState;
}
}

然后,在我的帖子列表模块中,我将newEditorState作为道具进行传递。

<PostCard key={post.id} {...post} 
postContent = {this.handlePostDisplay(post)}
/>

最后,这里是我的编辑器显示:

<Editor 
editorState={props.postContent} 
readOnly={true} 
/>

上面的代码呈现文本,但提到和hastags没有正确显示,它们显示为纯文本。我确信我在渲染时遗漏了任何步骤,从文档中我可以看到我们需要使用decorator,但不确定如何使用。我将非常感谢任何帮助!

确保添加提及插件css文件。

导入"draft js提及plugin/lib/plugin.css";

最新更新