gpt4 book ai didi

reactjs - 嵌套情感 10 个级联类

转载 作者:行者123 更新时间:2023-12-03 14:25:35 25 4
gpt4 key购买 nike

以前在 Emotion 9 中,您可以使用 Emotion 类名来利用级联。您可以将情感常量括在大括号中,并在其前面加上句点,然后加上美元符号。例如,您可以这样做:

const child = css`
color: green;
`;
const parent = css`
color: red;
.${child} {
color: yellow;
}
`;

<div className={parent}>I am red</div>
<div className={child}>I am green</div>
<div className={parent}>
<div className={child}>I am yellow</div>
</div>

如何在 Emotion 10 中实现此行为?这就是我的问题。

以下是有关不使用句点美元符号时会发生什么情况的更多信息。

<小时/>

现在,以下是并且是可取的:如果 Emotion 9 或 10 中没有使用句点,则父 const 将继承嵌套的 const 样式。此外,如果该嵌套 const 具有重写样式,那么这些样式最终将由父级继承。

const child = css`
color: green;
`;
const parent = css`
color: red;
`;
<div className={parent}>I am red</div>
<div className={child}>I am green</div>

const child = css`
color: green;
`;
const parent = css`
${child}
`;
<div className={parent}>I am green</div>

const child = css`
color: green;
`;
const parent = css`
${child} {
color: yellow;
}
`;
<div className={parent}>I am yellow</div>

const child = css`
color: green;
`;
const parent = css`
color: red;
${child}
`;
<div className={parent}>I am green</div>

const child = css`
color: green;
`;
const parent = css`
color: red;
${child} {
color: yellow;
}
`;
<div className={parent}>I am yellow</div>

最佳答案

以下内容将起作用,它只是在 CodePen 中不起作用,因为输出代码上附加了更多文本,并且它再次对常量名称进行哈希处理。但如果您在自己的代码库中进行测试,这确实有效。我不喜欢这样做,走进对象来获取名称,感觉很糟糕。希望 Emotion 针对这些情况提供一些特定的内容。

const cat = css`
color: red;
`;
const dog = css`
color: green;
.css-${cat.name} {
border-bottom: 1px solid currentColor;
}
`;

关于reactjs - 嵌套情感 10 个级联类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54599778/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com