Summernote 通过 laravel 中传递的参数设置文本

Summernote set text through passed parameter in laravel

我的 laravel 控制器将参数传递给我可以通过 $note{{ }} 中访问的视图。好吧,它有效。我可以获得笔记的标题。但是,当我想为 summernote 设置 HTML 时,它不知何故不起作用。这是我试过的:

<script type="text/javascript">
$('#editor').summernote('code', '{{ $note->html }}');

以及未转义使用 {!! $note->html !!}}。结果是一个看起来像普通文本输入的 summernote 编辑器。 但是, 手动设置 [...]('code', '<html><h1>some html for example</h1></html>)[...] 时,效果非常好。

很明显,这与 blade 使用 {{ }} 发布数据的方式有关,但我目前无法弄清楚原因。使用未转义的 html 是我想到的第一个方法。

输出PHP数据给JavaScript使用时,我喜欢在变量上使用json_encode。这保证了变量以 JavaScript 友好的版本输出——它将字符串包装在 ' 标记中,单独保留整数,并输出复杂的 arrays/objects 作为正确的 JSON.

$('#editor').summernote('code', {!! json_encode($note->html) !!});