CKEditor - HTML-код продолжает добавлять новую строку, когда я переключаюсь между представлением исходного кода и представлением wysiwyg? - PullRequest
0 голосов
/ 09 февраля 2019

Я пытался сохранить свой код jinja в CKEditor, как это было после того, как я переключил представление между представлением кода и представлением WYSIWYG.

И я мог бы получить этот результат, добавив строку ниже в моем config.jsfile

CKEDITOR.config.protectedSource.push(/\r|\n/g);

CKEDITOR.config.autoParagraph = false;

Однако для HTML-кода это не очень хорошо работает.Например, если jinja код и html смешаны вместе следующим образом:

{% if name=='bob' %}
    {{'hello bob'}}
{%else%}
    {{ 'hello ' + name }} 
{% endif %}

<p>Hello visitor</p>

Вот демоверсия по Fiddle JS

После этого, когда я меняюот представления кода до представления wyiwyg в CKEditor, HTML-код просто увеличивается на одну новую строку и еще одну новую строку для другого переключаемого представления, как показано ниже:

enter image description here

Я не могу найти, что не так с кодом HTML, я просто что только отформатировать jinja код, как я могу это исправить?Спасибо

1 Ответ

0 голосов
/ 19 февраля 2019

Запишите эти дополнительные строки под своим кодом

$("body").on("click", ".cke_button__source", ()=>{
//   if(CKEDITOR.instances.editor1.mode==="source"){
     let vtk = CKEDITOR.instances.editor1.getData();
    // vtk = vtk.replace(/\n<p>/gm, "<p>");
     vtk = vtk.replace(/^\s*[\r\n]/gm, "");
     $(".cke_source").val(vtk)
  // }
})

Вот jsFiddle

...