diff --git a/src/public/app/services/note_content_renderer.js b/src/public/app/services/note_content_renderer.js index 0a509af31..2fb805799 100644 --- a/src/public/app/services/note_content_renderer.js +++ b/src/public/app/services/note_content_renderer.js @@ -7,6 +7,7 @@ import openService from "./open.js"; import froca from "./froca.js"; import utils from "./utils.js"; import linkService from "./link.js"; +import treeService from "./tree.js"; let idCounter = 1; @@ -31,6 +32,17 @@ async function getRenderedContent(note, options = {}) { renderMathInElement($renderedContent[0], {trust: true}); } + + const getNoteIdFromLink = el => treeService.getNoteIdFromNotePath($(el).attr('href')); + const referenceLinks = $renderedContent.find("a.reference-link"); + const noteIdsToPrefetch = referenceLinks.map(el => getNoteIdFromLink(el)); + await froca.getNotes(noteIdsToPrefetch); + + for (const el of referenceLinks) { + const noteId = getNoteIdFromLink(el); + + await linkService.loadReferenceLinkTitle(noteId, $(el)); + } } else { await renderChildrenList($renderedContent, note);