zoukankan      html  css  js  c++  java
  • [Webpack + React] Import CSS Modules with TypeScript and webpack

    If you try to use CSS Modules in TypeScript the same way you would use them in JavaScript, with webpack’s css-loader, you’ll see an error: ”TS2307: Cannot find module './styles.css'”. typings-for-css-modules-loader is a drop-in replacement for css-loader that works with TypeScript and generates typings for CSS on the fly.

    You’ll need to install dependencies first:

    npm install --save-dev css-loader typings-for-css-modules-loader

    Webpack:

    ...
    {
                    test: /.css$/,
                    include: path.join(__dirname, 'src'),
                    use: [
                        'style-loader',
                        {
                            loader: 'typings-for-css-modules-loader',
                            options: {
                                modules: true,
                                namedExport: true,
                                camelCase: true,
                            },
                        },
                    ],
                },
    ...

    css:

    .salmon-button {
        padding: 0.5em 1em;
        background: snow;
        color: salmon;
        border: 1px solid salmon;
        border-radius: 3px;
        font-size: 1.6em;
        font-weight: bold;
    }

    js:

    With camelCase turned on in Webpack, we can do:

    import * as styles from './index.css';
    
    const html = `<button class=${styles.salmonButton}>Click me!</button>`;
    document.getElementById('app').innerHTML = html;

    Instead of:

    styles['salmon-button']
  • 相关阅读:
    求一个数字各个位的数字之和
    二进制和十进制的转换 分别用python和js实现
    pymysql 获取插入数据的主键id
    js03.事件
    02.js运算符
    jsonpath
    01.js控制台
    2.命令补充
    hashmap
    正则表达式的补充
  • 原文地址:https://www.cnblogs.com/Answer1215/p/8361472.html
Copyright © 2011-2022 走看看