From b0320416a5d6e0e126913279ea6406f08e25f50b Mon Sep 17 00:00:00 2001 From: "qingwei.li" Date: Fri, 27 Jan 2017 12:01:36 +0800 Subject: [PATCH] compatible vuep, fixed QingWei-Li/vuep/issues/2 --- src/render.js | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/render.js b/src/render.js index 8536203..f059b18 100644 --- a/src/render.js +++ b/src/render.js @@ -106,13 +106,17 @@ export function renderArticle (content) { if (!OPTIONS.sidebar && !OPTIONS.loadSidebar) renderSidebar() if (content && typeof Vue !== 'undefined') { - const script = content.match(']*?>([^<]+)') - - script && document.body.querySelector('article script').remove() CACHE.vm && CACHE.vm.$destroy() - CACHE.vm = script - ? new Function(`return ${script[1].trim()}`)() + + const script = [].slice.call( + document.body.querySelectorAll('article>script')) + .filter(script => !/template/.test(script.type) + )[0] + + CACHE.vm = script && script.remove() + ? new Function(`return ${script.innerText.trim()}`)() : new Vue({ el: 'main' }) // eslint-disable-line + CACHE.vm && CACHE.vm.$nextTick(_ => event.scrollActiveSidebar()) } if (OPTIONS.auto2top) setTimeout(() => event.scroll2Top(OPTIONS.auto2top), 0)