我想将正在使用Draft.js和React(在UI中)编辑的数据存储到MySQL数据库中。我不知道我应该以哪种格式存储我的数据,这样我就可以从数据库中提取数据,并在页面上显示它的格式应用,而写文本?例如-我对一些文本应用了粗体样式,并给出了一些换行符。如何存储这些信息以备后用?请建议一种格式来存储我的数据。
tquggr8v1#
您可以将其保存为字符串格式。为了详细说明,您可以使用ContentState的JSON序列化字符串,如Draft JS docs中所述。Draft JS有实用方法convertFromRaw和convertToRaw来帮助你。看看上面链接的文档,它们很清楚。
ContentState
convertFromRaw
convertToRaw
p5cysglq2#
对于仍面临此问题的任何人:您可以在此video中看到解决方案基本上,您必须convertToRaw,然后JSON.stringify它。然后,它可以作为字符串发送到后端。要显示它,请对该特定数据发出GET请求,然后JSON.parse它,然后convertFromRaw。将它作为editorState传递到另一个RichTextEditor,但设置readOnly={true}
x3naxklr3#
Draft.js正在存档。新的替代方案是lexical你可以在这里找到它的Playground:https://playground.lexical.dev/
3条答案
按热度按时间tquggr8v1#
您可以将其保存为字符串格式。为了详细说明,您可以使用
ContentState
的JSON序列化字符串,如Draft JS docs中所述。Draft JS有实用方法
convertFromRaw
和convertToRaw
来帮助你。看看上面链接的文档,它们很清楚。p5cysglq2#
对于仍面临此问题的任何人:您可以在此video中看到解决方案
基本上,您必须convertToRaw,然后JSON.stringify它。然后,它可以作为字符串发送到后端。要显示它,请对该特定数据发出GET请求,然后JSON.parse它,然后convertFromRaw。将它作为editorState传递到另一个RichTextEditor,但设置readOnly={true}
x3naxklr3#
Draft.js正在存档。
新的替代方案是lexical
你可以在这里找到它的Playground:https://playground.lexical.dev/