我真的很难理解如何使用羽毛笔......
保存数据不是一个问题,因为非常简单:)
我有点卡在两点上
任何人都可以提供任何建议如何加载delta
{"ops":[{"insert":"this is a test bit of text\n"}]}
回到主播编辑器以及如何解析输出以创建页面?
提前感谢您的回复!
答案 0 :(得分:10)
使用setContents插入delta:
quill.setContents({
"ops":[
{"insert":"this is a test bit of text\n"}
]
});
http://codepen.io/anon/pen/VKWZLd
您可以使用以下方式访问原始HTML:
var html = document.querySelector(".ql-editor").innerHTML
如果您使用的是原始HTML,则需要在使用之前对其进行清理。
答案 1 :(得分:10)
这对我有用。愿这对某人有所帮助。
editor.root.innerHTML = "<p><strong class=\"ql-size-large\"><em><s><u>This would be the text that we are going to show in the editor with pre-formatting.<\/u><\/s><\/em><\/strong><\/p>";
此处editor
将是您的主播实例。
感谢LINK
答案 2 :(得分:2)
var quill = new Quill('#editor-container', { modules: { toolbar: [] }, readOnly: true, theme: 'bubble'} );
var $target = $('#editor-container');
var $content = JSON.parse($target[0].innerText);
quill.setContents($content);
答案 3 :(得分:1)
我是为使用Laravel的人编写的。我是这样的:
要存储,请先提交我的表格:
form.submit(function(){
var description = document.querySelector('input[name=description]');
description.value = editor.root.innerHTML;
})
要编辑表单,请加载内容:
var editor = new Quill('#quill-editor', {
modules: {
toolbar: toolbarOptions
},
placeholder: 'type something',
theme: 'snow'
});
.root.innerHTML = '{!! !empty($quill_editor) ? $quill_editor : '' !!} ';
如果最后要使用的是html,则可以在模板中像这样加载它:
{!! $description !!}
我希望对某人有用
答案 4 :(得分:0)
// parse String
let stringToParse = String.raw`{"ops":[{"insert":"this is a test bit of text\n"}]}`;
// set quill editor instance to Delta state.
quill.setContents(JSON.parse());
setContents(从Quill中将编辑器设置为Delta)。
String.raw以避免将'\t'
扩展到' '
。 (另请参见JSON.parse throws error when parsing...)
答案 5 :(得分:0)
Quill通过自己的方法解析内容。
如果直接使用HTML,请使用 dangerouslyPasteHTML ,如下所示:
quill.clipboard.dangerouslyPasteHTML("<p>here is some <strong>awesome</strong> text</p>");
这将通过其自己的方法清理HTML并加载HTML。
答案 6 :(得分:-1)
所以我设法找到一个解决方法,不确定它是否是正确的方法,但是它有效。
原来是javascript转义传递给它的数据。
基本上当表单无法提交时,错误的数据被添加回隐藏的输入字段,然后javascript从那里读取...
HTML表单:
<input name="post" id="post" type="hidden" data-post-id="{{ old('post') }}">
使用Javascript:
var postId = $('#post').data("post-id");
quill.setContents(postId);