typescript - 无法在 NextJs + Storybook 中提供静态文件

标签 typescript webpack next.js storybook

nextjs 文档( https://nextjs.org/docs/basic-features/static-file-serving )声明在 public 下添加图像文件路径目录。
我有一个渲染图像组件的组件,该文件在我的 nextjs 项目上正确渲染,但不在故事书内渲染。该图像文件目前位于 public/images/

const renderImage = () => {
    const portraitClassName = cx({
        [styles.imageContainerPortrait]: true,
    });

    return (
        <img
            className={portraitClassName}
            data-testid="image"
            src="/images/portrait.png"
            alt={image.imgAlt}
        />
    );
};
这是我当前的故事书配置文件
webpackFinal: async (config) => {
        config.module.rules.push({
            test: /\.(scss|sass|css)$/,
            use: [
                {
                    loader: "sass-loader",
                    options: {
                        implementation: require("sass"),
                    },
                },
                {
                    loader: "postcss-loader",
                    options: {
                        ident: "postcss",
                        plugins: [tailwindcss, autoprefixer],
                    },
                }
            ],
            include: path.resolve(__dirname, "../"),
        });
        return config;
    }
是否缺少某些东西可以让我以与 Nextjs 的设置方式相同的方式渲染图像?

最佳答案

您需要告诉故事书在哪里可以找到您的图像。
nextjs他们留在public/所以你可以添加 -s ./public到您的脚本以运行故事书:

//package.json
{
"scripts": {
    "start-storybook": "start-storybook -s ./public"
  }
}
这里的文档链接供引用:https://storybook.js.org/docs/react/configure/images-and-assets#serving-static-files-via-storybook

关于typescript - 无法在 NextJs + Storybook 中提供静态文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64016896/

相关文章:

visual-studio - TypeScript 重构在 VS 2013 RC2 中停止工作

javascript - 从 Webpack 的 require.context 中排除文件

javascript - next.js + Webpack + CSS => SyntaxError : Unexpected token .(点)= 如何修复?

javascript - 如何在 next.js getInitialProps 中调用 Prismic API?

typescript - 如何在vue + Typescript类组件中使用mapActions?

typescript - 如何解决错误 TS2532 : Object is possibly 'undefined'

typescript - TypeScript 中的柯里化(Currying)

javascript - Webpack 错误无法解析 JSX

javascript - webpack中css-loader的作用是什么

reactjs - Routes.push() 在 NextJS 上没有按预期工作