2016-03-29 4 views
3

У меня есть проект Meteor, который использует реактивный пакет froala: editor-reactive, чтобы установить поле пользователя со мной.Meteor froala: редактор-реактивный сэкономить на смене данных

Вот мой код шаблона JS:

Template.profile.helpers({ 
    getAbout: function() { 
    return Meteor.user().profile.about; 
    }, 
    doSave: function (e, editor) {   
    // Get edited HTML from Froala-Editor 
    var newHTML = editor.getHTML(); 
    // Do something to update the edited value provided by the Froala-Editor plugin, if it has changed: 
    if (!_.isEqual(newHTML, Meteor.user().profile.about)) { 
     Meteor.call("updateTestimony", Meteor.userId(), newHTML); 
    } 
    return false; // Stop Froala Editor from POSTing to the Save URL 
    } 
} 

Вот мой шаблон HTML код:

<template name="profile"> 
    <div> 
    {{> froalaReactive _onbeforeSave=doSave _value=getAbout}} 
    </div> 
</template> 

Он должен сохранить по мере изменения стоимости (я надеюсь). Но у меня есть ошибка в строке var newHTML = editor.getHTML();, и я также пробовал var newHTML = editor.html.get(true);. Оба они приводят к ошибке, когда он не может прочитать свойство html или getHTML. Я надеюсь, что это всего лишь синтаксическая ошибка, и мне нужно что-то еще, но что здесь не так?

ответ

0

Per the plugin docs, попробуйте:

var newHTML = editor.html.get(true /* keep_markers */); 

Если это не сработает, то, возможно, использовать другую версию. В этом случае, дать синтаксисам выстрел:

var newHTML = $('.your_selector').editable('getHTML', true, true); 

var newHTML = $('.your_selector').froalaEditor('html.get', true); 

Больше из официальных документов here и посмотреть this question.

Смежные вопросы