From 701b3a84a86f94fc3a56fd6f868d0d5e775c5148 Mon Sep 17 00:00:00 2001 From: Jinbao1001 Date: Fri, 13 Sep 2024 16:12:17 +0800 Subject: [PATCH] fix: handling special characters in specifier (#2197) * fix: import specifier * fix: winpath --- src/loaders/markdown/index.ts | 2 +- src/loaders/post-raw/index.ts | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/loaders/markdown/index.ts b/src/loaders/markdown/index.ts index 0f793495a..ee1b7fd42 100644 --- a/src/loaders/markdown/index.ts +++ b/src/loaders/markdown/index.ts @@ -150,7 +150,7 @@ function emitDemo( const entryFileName = Object.keys(demo.asset.dependencies)[0]; demoDepsMap[demo.id] ??= {}; Object.keys(demo.resolveMap).forEach((key, index) => { - const specifier = `${demo.id.replace(/-/g, '_')}_deps_${index}`; + const specifier = `${demo.id.replace(/[^\w\d]/g, '_')}_deps_${index}`; if (key !== entryFileName) { const normalizedKey = isRelativePath(key) ? winPath(demo.resolveMap[key]) diff --git a/src/loaders/post-raw/index.ts b/src/loaders/post-raw/index.ts index 24750fd32..194b537c7 100644 --- a/src/loaders/post-raw/index.ts +++ b/src/loaders/post-raw/index.ts @@ -1,9 +1,10 @@ +import { winPath } from '@umijs/utils'; /** * loader for mako dumi-raw watch-parent */ export default function postRawLoader(this: any, raw: string) { return ` - import '${this.resourcePath}?watch=parent'; + import '${winPath(this.resourcePath)}?watch=parent'; ${raw}; `; }