サードパーティの反応コンポーネントを使用していますが、sass を正しく設定できません。このコンポーネントは一連の<li>
html タグを作成し、そのうちの 1 つ<li>
がクリックされると、その項目に「アクティブな」クラス名を追加します: <li class="active">
. そのアクティブな <li>
要素の css をカスタマイズしたいと思います。これを行うために、次の内容を含む Test.scss ファイルを作成しました。
.tag_input li.active {
font-weight: bold;
text-decoration: underline;
color: red;
}
このスタイリングを使用するには、次のように反応します
import classes from './Test.scss'
export const Test = (props) => {
return (
<ReactTags
classNames={{
tags: classes.tag_input,
}}
...
>
)
}
問題は、Webpack がこの Sass ファイルをロードするときに、各ローカル .sass ファイルの各クラス名を次の形式に変換するcss-loaderを使用することです: "localIdentName=[name]_[local]__[hash:base64:5] "。つまり、私の CSS はもはや a に適用されません<li class="active">
。代わりに、 で機能するようになりました<li classname="Test__active___2LBGS">
。これまでに2つの(悪い)解決策を考えました:
- localIdentName を使用して特定の css クラス名の名前を変更しないように、どうにかして webpack を再構成します
- どういうわけか
<ReactTags />
クラス名を使用するようになりました: Test__active___2LBGS
これらのどちらも実現可能とは思えないので、かなり行き詰まっています!! どんな助けでも大歓迎です。