From cb96e25b1cc89cb96093aa9ea920d4d7e0dc9950 Mon Sep 17 00:00:00 2001 From: Li Yiming Date: Mon, 5 Nov 2018 21:40:37 +0800 Subject: [PATCH 1/3] Fixed: mermaid duplicated id, see #504 --- docs/markdown.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/docs/markdown.md b/docs/markdown.md index d03d5ec43..87b4ad52e 100644 --- a/docs/markdown.md +++ b/docs/markdown.md @@ -36,6 +36,12 @@ window.$docsify = { // // +function makeid(len) { + var text = new Array(len); + var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; + for (var i = 0; i < len; i++) text[i] = possible.charAt(Math.floor(Math.random() * possible.length)); + return text.join(""); +} mermaid.initialize({ startOnLoad: false }); window.$docsify = { @@ -43,8 +49,9 @@ window.$docsify = { renderer: { code: function(code, lang) { if (lang === "mermaid") { + let id = makeid(10); return ( - '
' + mermaid.render(lang, code) + "
" + '
' + mermaid.render(id, code) + "
" ); } return this.origin.code.apply(this, arguments); From c6a04e2dd1b4a988498f6037261ae0048f6ed385 Mon Sep 17 00:00:00 2001 From: Li Yiming Date: Tue, 6 Nov 2018 17:10:44 +0800 Subject: [PATCH 2/3] Improved: use counter instead of random id --- docs/markdown.md | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/docs/markdown.md b/docs/markdown.md index 87b4ad52e..5456dfb8b 100644 --- a/docs/markdown.md +++ b/docs/markdown.md @@ -36,12 +36,7 @@ window.$docsify = { // // -function makeid(len) { - var text = new Array(len); - var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; - for (var i = 0; i < len; i++) text[i] = possible.charAt(Math.floor(Math.random() * possible.length)); - return text.join(""); -} +let num = 0; mermaid.initialize({ startOnLoad: false }); window.$docsify = { @@ -49,9 +44,8 @@ window.$docsify = { renderer: { code: function(code, lang) { if (lang === "mermaid") { - let id = makeid(10); return ( - '
' + mermaid.render(id, code) + "
" + '
' + mermaid.render('mermaid-svg-' + num++, code) + "
" ); } return this.origin.code.apply(this, arguments); From 6debd2dc3726097ebf090d116489e044f1115717 Mon Sep 17 00:00:00 2001 From: Li Yiming Date: Tue, 6 Nov 2018 17:16:27 +0800 Subject: [PATCH 3/3] use `var` instead of `let` --- docs/markdown.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/markdown.md b/docs/markdown.md index 5456dfb8b..c506e17c5 100644 --- a/docs/markdown.md +++ b/docs/markdown.md @@ -36,7 +36,7 @@ window.$docsify = { // // -let num = 0; +var num = 0; mermaid.initialize({ startOnLoad: false }); window.$docsify = {