如何使用 style-loader 渲染嵌套的 类?
How to render nested classes with style-loader?
我正在尝试嵌套 classes 渲染
.form {
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
height: 100%;
.formGroup {
margin-bottom: 30px;
}
}
import { form } from '../../styles/form.scss';
class Signin extends Component {
render() {
return (
<div className={form}>
<h1>Sign In</h1>
<form>
<div className="formGroup">
<Field name="email" placeholder="Email" component="input" type="text" className="form-control" />
</div>
<button action="submit" className="btn btn-primary">Sign in</button>
</form>
</div>
);
}
}
网页包:
{
test: /\.scss$/,
loader: 'style!css?modules&localIdentName=[name]---[local]---[hash:base64:5]!sass'
},
如果我导入整个文件 import dashboardStyle from '../../styles/dashboard.scss';
我得到以下信息:
{
confirm: "dashboard---confirm---E_dk-",
dashboard: "dashboard---dashboard---3Hfnh",
header:"dashboard---header---3FG7b",
ideaForm: "dashboard---ideaForm---3Vgcr",
placeholder: "dashboard---placeholder---177bd"
}
好像不支持嵌套。相反,嵌套 class 确认会自行显示。
如果可能的话,你能指出文档和示例吗?
有一个相关问题:How do you render nested SASS in webpack?
你可以只检查 form
变量上的内容,如果你使用 css-loader
它会为 class 中的每个 class 名称创建一个对象 属性 =29=] 没有 嵌套 的文件。
因此,为了访问 class 名称,您只需编写 form.formGroup
.
编辑
对于看起来像那样的 scss
.item-list {
margin-top: 35px;
.empty-cart {
margin-top: 0;
}
}
这是 css-modules 创建的产品中的映射:
我正在尝试嵌套 classes 渲染
.form {
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
height: 100%;
.formGroup {
margin-bottom: 30px;
}
}
import { form } from '../../styles/form.scss';
class Signin extends Component {
render() {
return (
<div className={form}>
<h1>Sign In</h1>
<form>
<div className="formGroup">
<Field name="email" placeholder="Email" component="input" type="text" className="form-control" />
</div>
<button action="submit" className="btn btn-primary">Sign in</button>
</form>
</div>
);
}
}
网页包:
{
test: /\.scss$/,
loader: 'style!css?modules&localIdentName=[name]---[local]---[hash:base64:5]!sass'
},
如果我导入整个文件 import dashboardStyle from '../../styles/dashboard.scss';
我得到以下信息:
{
confirm: "dashboard---confirm---E_dk-",
dashboard: "dashboard---dashboard---3Hfnh",
header:"dashboard---header---3FG7b",
ideaForm: "dashboard---ideaForm---3Vgcr",
placeholder: "dashboard---placeholder---177bd"
}
好像不支持嵌套。相反,嵌套 class 确认会自行显示。
如果可能的话,你能指出文档和示例吗?
有一个相关问题:How do you render nested SASS in webpack?
你可以只检查 form
变量上的内容,如果你使用 css-loader
它会为 class 中的每个 class 名称创建一个对象 属性 =29=] 没有 嵌套 的文件。
因此,为了访问 class 名称,您只需编写 form.formGroup
.
编辑 对于看起来像那样的 scss
.item-list {
margin-top: 35px;
.empty-cart {
margin-top: 0;
}
}
这是 css-modules 创建的产品中的映射: