无法让 css 模块在 Typescript Storybook 项目中工作
Posted
技术标签:
【中文标题】无法让 css 模块在 Typescript Storybook 项目中工作【英文标题】:Can't get css modules to work within Typescript Storybook project 【发布时间】:2021-01-02 13:41:37 【问题描述】:这是./storybook/main.js
的当前配置,我似乎无法让任何 css 模块在我的故事书组件中工作。这是一个 Typescript 项目,所以不完全确定我是否需要任何额外的东西才能使模块正常工作。
const path = require("path");
const tailwindcss = require("tailwindcss");
const autoprefixer = require("autoprefixer");
module.exports =
stories: ["../stories/**/**/*.stories.tsx"],
addons: [
"@builder.io/storybook",
"@storybook/addon-knobs",
"@storybook/addon-knobs/register",
],
webpackFinal: async (config) =>
config.module.rules.push(
test: /\.(scss|sass|css)$/,
use: [
loader: "sass-loader",
,
loader: 'css-loader',
options:
modules: true,
,
,
loader: "postcss-loader",
options:
ident: "postcss",
plugins: [tailwindcss, autoprefixer],
,
,
],
include: path.resolve(__dirname, "../"),
,
test: /\.(png|jpe?g|gif|jp2|webp)$/,
use: [
loader: "file-loader",
options:
name: "assets/images/[name].[ext]",
,
,
],
);
return config;
,
;
MyComponent.jsx
import React from "react";
import styles from "./styles.css";
const MyComponent = () =>
console.log(styles);
return <h1>hi</h1>;
;
记录 styles
返回一个空对象。我在这里遗漏了什么吗?
【问题讨论】:
【参考方案1】:看来我需要向故事书插件添加额外的加载器
name: '@storybook/preset-scss',
options:
cssLoaderOptions:
modules: true
,
【讨论】:
以上是关于无法让 css 模块在 Typescript Storybook 项目中工作的主要内容,如果未能解决你的问题,请参考以下文章
在 typescript 中使用 css 模块时出错与 webpack 配置反应
在 ReactJS + Typescript 中加载 CSS 模块并重新连接反应
Webpack 和 TypeScript:无法解析 node.d.ts 中的模块“child_process”