html - 如何更改 JSX 中的自定义变量以传递给 CSS var()?
问题描述
我想根据条件编辑cat-color
变量。filter_category
这是 CSS 文件的最小工作示例
:root {
--cat-color: red;
}
.categories_filter {
display: flex;
justify-content: flex-start;
flex-wrap: wrap;
align-items: center;
.filter_category {
background-color: #fafafa;
cursor: pointer;
color: var(--cat-color);
}
}
这是 JSX 的一个最小工作示例,其中包括我想以自定义方式更改其属性的 css 样式。
return (
<Layout {...this.props}>
<div className="inner">
<ul className="categories_filter">
{newCats.map((category, id) => (
<li
key={id}
className={`${
category === activeCategory && "activeCat"
} filter_category`}
onClick={() => this.handleFilter(category)}
>
{category}
</li>
))}
</ul>
</div>
)
解决方案
基本上,这是在 react 中完成的方式是改变它拥有的类,而不是类本身。你可以这样做:
return (
<Layout {...this.props}>
<div className="inner">
<ul className="categories_filter">
{newCats.map((category, id) => (
<li
key={id}
V className={`${
( category === activeCategory) ? "activeCat" :
"filter_category"}`}
onClick={() => this.handleFilter(category)}
>
{category}
</li>
))}
</ul>
</div>
)
推荐阅读
- c - atof 和 strtod 的工作方式有什么不同吗?
- node.js - Vuetify Checbkox 更新与每个 API 更新
- swift - 是否可以在远程 URL 上应用 AVAssetExport?
- git - 无法将分叉的 repo 安装为 package.json 中的依赖项
- cassandra - Write-Ahead-Log 会成为 Cassandra 的瓶颈吗?
- sql-server - 数据库连接与在单个表中保留列
- html - 带有标题的 Photoswipe 多媒体画廊
- excel - 如何在excel的菜单下拉菜单中使用公式和不使用公式制作2个选项?
- python - 未使用的方法会减慢 Python 中的类吗?
- java - 为什么 InternalViewResolver 找不到 jsp 文件?