我正在尝试将函数 setContent 与 QuillJS 一起使用。
当我使用 JSON.stringify 将内容保存到数据库时,它看起来像这样:
{"ops":[{"insert":"\n \n"},{"attributes":{"color":"#4572a7","bold":true},"insert":"#test 1"},{"attributes":{"color":"#000000"},"insert":": "},{"insert":"\n"}]}
当我返回字符串时,PHP 中的 echo json_encode 会生成一个带有转义符的字符串,如下所示:
[["{\"ops\":[{\"insert\":\"\n \n\"},{\"attributes\":{\"color\":\"#4572a7\",\"bold\":true},\"insert\":\"#test 1\"},{\"attributes\":{\"color\":\"#000000\"},\"insert\":\": \"},{\"insert\":\"\n\"}]}"]]
看起来 quill.setContents 函数不太喜欢这样
quill.setContents(JSON.parse(content));
quill.setContents(content));
这些方法都不适用于转义字符串,处理此问题的最佳方法是什么?
最佳答案
Quill 需要一个有效的 JavaScript 对象或 Delta。
json_encode 将 PHP 对象编码为 JSON 字符串。在您的情况下,您已经有一个 JSON 编码的字符串。只需将其发送到浏览器,调用 JSON.parse(content) 并将其传递给 quill.setContents()
关于javascript - Quilljs setContents(json_string_with_escapes),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41977175/