diff --git a/docs/guide/faq.md b/docs/guide/faq.md index 1223e74da..70520d1bf 100644 --- a/docs/guide/faq.md +++ b/docs/guide/faq.md @@ -219,7 +219,7 @@ import './index.css'; 不支持。如果文档目录结构的复杂度超过 3 级,应该考虑优化文档整体结构而非使用三级导航。如果有特殊场景需要,可以自定义主题实现。 -## ## 为什么 live demo 和 babel-plugin-import 无法一起使用? +## 为什么 live demo 和 babel-plugin-import 无法一起使用? live demo 需要的正是全量引入,和 babel-plugin-import 的工作逻辑有冲突。 @@ -227,5 +227,5 @@ live demo 需要的正是全量引入,和 babel-plugin-import 的工作逻辑 - 不需要 live demo:忽略警告即可 - 希望开启 live demo: - - style: false 直接去掉插件即可 - - 否则借助 .dumi/global.css 加载组件样式,可以参考 [and ssr 静态样式导出](https://ant.design/docs/blog/extract-ssr-cn#static-extract-style)提取`css`文件。 + - 如果不需要插件自动注入组件`css`, 即配置了 `options: {"libraryName": "antd", "style": false}`: 直接去掉插件即可 + - 否则借助 .dumi/global.css 加载组件样式,可以参考 [and ssr 静态样式导出](https://ant.design/docs/blog/extract-ssr-cn#static-extract-style) 提取 `css` 文件。 diff --git a/package.json b/package.json index 346e31b44..8b7979ab5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "dumi", - "version": "2.4.10", + "version": "2.4.11", "description": "📖 Documentation Generator of React Component", "keywords": [ "generator", 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}; `; }