TypeScriptでCSS modulesを扱う
3945 ワード
既存のJavaScript(React)のTypeScript化を進めていて、ハマったのでメモ。
事象
CSS modules部分でfailしてしまう
Foo/index.tsx
import React from 'react'
import styles from './index.css'
...
app/javascript/components/Foo/index.tsx:2:20 - error TS2307: モジュール './index.css' が見つかりません。
解決策
typed-css-modules や typings-for-css-modules-loader などのpackageを使う手もあったけど、グローバルな定義ファイルを用意してササッと対応することにした。
declare module '*.css' {
interface IClassNames {
[className: string]: string
}
const classNames: IClassNames;
export = classNames;
}
以上っ
参考
- reactjs - How to import CSS modules with Typescript, React and Webpack - Stack Overflow
- How to use CSS Modules with TypeScript and webpack – Artem Sapegin – Medium
- Quramy/typed-css-modules: Creates .d.ts files from css-modules .css files
- Module build failed error · Issue #89 · Jimdo/typings-for-css-modules-loader
Author And Source
この問題について(TypeScriptでCSS modulesを扱う), 我々は、より多くの情報をここで見つけました https://qiita.com/paranishian/items/bb02c91ec1004430e701著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .