From 1c7b949fd4d108e358b4b867efb79dc4ba8f0e55 Mon Sep 17 00:00:00 2001 From: eyebrowkang <48169104+eyebrowkang@users.noreply.github.com> Date: Tue, 21 Nov 2023 10:25:02 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8DchangeTheme=E6=97=A0?= =?UTF-8?q?=E6=B3=95=E6=96=B0=E5=A2=9Etheme=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/config.js | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/utils/config.js b/src/utils/config.js index 8b96b1579..992e31554 100644 --- a/src/utils/config.js +++ b/src/utils/config.js @@ -90,11 +90,13 @@ export function getThemeFromLocal(fullClass = false) { */ export function changeTheme($cherry, theme = '') { const newTheme = (theme ? theme : getThemeFromLocal()).replace(/^.*theme__/, ''); - const reg = /(\stheme__)([^ $]+?)( |$)/g; - const replacer = (match, p1, p2, p3) => { - return `${p1}${newTheme}${p3}`; + const newClass = ` theme__${newTheme}`; + const reg = /(\stheme__[^\s$]+?)(\s|$)/g; + const replacer = (match, p1, p2) => { + return p2; }; - $cherry.wrapperDom.className = $cherry.wrapperDom.className.replace(reg, replacer); - $cherry.previewer.getDomContainer().className = $cherry.previewer.getDomContainer().className.replace(reg, replacer); + $cherry.wrapperDom.className = $cherry.wrapperDom.className.replace(reg, replacer) + newClass; + $cherry.previewer.getDomContainer().className = + $cherry.previewer.getDomContainer().className.replace(reg, replacer) + newClass; saveThemeToLocal(newTheme); }