小编p.b*_*iko的帖子

NextJS、Storybook、SVG 和绝对导入路径

无法将 SVG 用作 NextJS 应用程序和 Storybook 的模块(使用绝对路径导入)。经过多次尝试设置,我能够在 Next 或 Storybook 中导入 SVG,但不能同时导入两者。我将此设置用于babel-plugin-inline-react-svg

// .babelrc
{
  ...
  "plugins": [
    ...
    "inline-react-svg"
  ]
}
Run Code Online (Sandbox Code Playgroud)

使用此插件 Storybook 不需要任何配置,并且此示例代码可以按预期工作:

import Wrapper from '../../../components/Wrapper';
import IconSVG from '../../../icons/sandwich.svg';

export const WrappedSVG = () => (
  <Wrapper>
    <IconSVG />
  </Wrapper>
);
Run Code Online (Sandbox Code Playgroud)

但以下情况则不然:

import Wrapper from 'components/Wrapper';
import IconSVG from 'icons/sandwich.svg';

export const WrappedSVG = () => (
  <Wrapper>
    <IconSVG />
  </Wrapper>
);
Run Code Online (Sandbox Code Playgroud)

正在处理包装器,但未处理图标:Cannot find module

这是svgr设置:

// next.config.js
module.exports = { …
Run Code Online (Sandbox Code Playgroud)

typescript next.js storybook

4
推荐指数
1
解决办法
5170
查看次数

标签 统计

next.js ×1

storybook ×1

typescript ×1