如何使用draft-js

时间:2017-07-15 18:01:55

标签: draftjs

我决定在这里提出这个问题。我使用mysql作为数据库作为存储,并希望将draft-js添加到我正在构建的网页中。获取数据并将数据保存到数据库的正确方法是什么?任何有效的例子都会很棒!

1 个答案:

答案 0 :(得分:3)

您应该使用convertToRawconvertFromRaw方法。文档摘录:

convertFromRaw(rawState: RawDraftContentState): ContentState
     

给定原始状态,将其转换为ContentState。这很有用   恢复要在草稿编辑器中使用的内容。

     

convertToRaw(contentState: ContentState): RawDraftContentState

     

给定一个ContentState对象,将其转换为原始JS结构。这是   保存编辑器状态以进行存储,转换为其他格式或应用程序中的其他用法时非常有用。

我分叉this笔来演示这些方法是如何工作的。打开my pen。首先,让我们考虑一个保存编辑器状态。我添加了#34;日志编辑器状态"按钮。如果打开控制台并单击该按钮,则可以将编辑器状态的当前表示形式视为JavaScript对象。您可以将此对象转换为JSON,并使用适当的API端点将此JSON保存在数据库中。

点击图片查看完整尺寸 log state

当您需要在页面上显示非空的编辑器时,使用您之前保存在数据库中的预定义内容,例如localstorage。在这里,您应该使用createWithContent方法和上面提到的convertFromRaw方法。在我的示例中,我将JSON字符串存储在变量editorStateAsJSONString中,对于实际情况,您应该请求返回JSON的API端点,然后按照描述呈现编辑器组件。

create with content