← Toute la documentation
Dernier workflow

Passerelle de contenu structuré

La passerelle de contenu structuré conserve l’édition de texte enrichi standard tout en ajoutant, par-dessus l’éditeur dans le navigateur, du JSON sémantique, la conversion en Markdown, le rendu HTML statique et la validation.

Mise en place de base

Chargez la passerelle après le bundle principal de l’éditeur. La passerelle ajoute à l’instance de l’éditeur des fonctions JSON et expose des fonctions Markdown et de rendu sur RichTextEditor.

<script src="/richtexteditor/rte.js"></script>
<script src="/richtexteditor/plugins/all_plugins.js"></script>
<script src="/richtexteditor/plugins/structured-content-bridge.js"></script>

<script>
  RichTextEditorStructuredBridge.installStructuredContentBridge();
  var editor = new RichTextEditor("#editor");
</script>

Méthodes de l’éditeur

  • editor.getJSON() renvoie un arbre de document sémantique ainsi que des champs de compatibilité.
  • editor.setJSON(documentModel) restaure le contenu à partir de la structure à base de nœuds.
var documentModel = editor.getJSON();
editor.setJSON({
  type: "doc",
  version: 2,
  format: "richtexteditor-json",
  content: [
    {
      type: "paragraph",
      content: [{ type: "text", text: "Restored from JSON" }]
    }
  ]
});

Fonctions globales

  • RichTextEditor.fromMarkdown(markdown)
  • RichTextEditor.toMarkdown(documentModel)
  • RichTextEditor.renderHTML(documentModel)
  • RichTextEditor.validateStructuredContent(documentModel)
var restored = RichTextEditor.fromMarkdown("## Hello\n\nMarkdown works too");
var html = RichTextEditor.renderHTML(restored);
var validation = RichTextEditor.validateStructuredContent(restored);
var markdown = RichTextEditor.toMarkdown(restored);

L’essayer

Utilisez la démo Structured JSON pour examiner côte à côte la sortie HTML en direct, le JSON sémantique, l’aller-retour Markdown, le rendu HTML statique et les résultats de validation. Pour les compromis liés au choix de l’un de ces formats comme source de vérité, consultez HTML, JSON ou Markdown : comment stocker du texte enrichi ?