2016-03-29 24 views
3

Ich habe Meteor-Projekt, das das Froala verwendet: Editor-reactive-Paket, um die Benutzer über mich Feld festlegen.Meteor froala: Editor-reaktive speichern bei Änderung der Daten

Hier ist meine Vorlage js Code:

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 
    } 
} 

Hier ist meine Vorlage HTML-Code:

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

es angenommen hat, als der Wert die Änderungen speichern (hoffe ich). Aber ich habe einen Fehler mit der Zeile var newHTML = editor.getHTML(); und ich habe auch versucht var newHTML = editor.html.get(true);. Beides führt zu einem Fehler, bei dem die Eigenschaft html oder getHTML nicht gelesen werden kann. Ich hoffe, das ist nur ein Syntaxfehler und ich brauche etwas anderes, aber was ist hier falsch?

Antwort

0

Per the plugin docs, versuchen:

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

Wenn das, möglicherweise eine andere Version können Sie nicht funktioniert verwenden. In diesem Fall geben Sie die folgenden Syntaxen einen Schuss:

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

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

Mehr von den offiziellen Dokumente here und sehen this question.