【发布时间】:2020-06-29 04:18:04
【问题描述】:
正如标题所说,这适用于位于同一个 js 文件中的样式化组件(前提是它们在上面按程序排序)。但是对于导入的子组件,我无法让它工作。
import React from "react";
import styled from "styled-components";
// Components
import Bars from "../path/Bars.js";
import BarsHover from "../path/BarsHover.js";
// Variables
import { colors } from "../../path/index.js";
//============================================ styles =============================================
const DivBars = styled(Bars)``;
const DivBarsHover = styled(BarsHover)``;
const DivWrapper = styled.div`
display: flex;
width: 20rem;
margin-bottom: 3rem;
&:hover {
cursor: pointer;
}
&:hover ${DivBars} {
display: none;
}
&:hover ${DivBarsHover} {
display: block;
}
`;
//=========================================== component ===========================================
const ParentComponent = props => {
return (
<DivContainer>
<DivBars fullBarWidth={"100%"} fractionBarWidth={"70%"} barColor={colors.niagara} />
<DivBarsHover fullBarWidth={"100%"} fractionBarWidth={"70%"} barColor={colors.gallery2} />
</DivContainer>
);
};
导出默认父组件;
【问题讨论】:
-
你是说
Bars和BarsHover是导入的不能隐藏,而DivBars和DivBarsHover可以?你的问题(如果有的话)对我来说有点不清楚。 -
(为了更清楚而编辑了问题):不,我不能让他们中的任何一个人隐藏。我试过
&:hover ${Bars} {display:none}和&:hover ${DivBars} {display:none}