【发布时间】:2022-01-18 07:04:59
【问题描述】:
我需要一种将“flex”切换为“none”的方法,反之亦然:
const UpdateSampleStyle = makeStyles((theme) => ({
gridcontainer: {
display: 'none', //props => props.show,
justifyContent:'center',
marginTop:'5px'
},
}));
function UpdateFieldObservations({formdata, handleChangeParent}){
const show = 'flex';
const classes = UpdateSampleStyle(show);
const [displaySettings, setDisplaySettings] = useState({
tradeWaterGrabSample: {display:'flex', justifyContent:'center', marginTop:'5px'},
tradeWaterCompositeProgram: {display:'flex', justifyContent:'center', marginTop:'5px'},
soilVapourGrabSample: {display:'flex', justifyContent:'center', marginTop:'5px'},
soilVapourInsituMeter: {display:'flex', justifyContent:'center', marginTop:'5px'},
stackEmissionGrabSample: {display:'flex', justifyContent:'center', marginTop:'5px'},
stackEmissionInsituMeter: {display:'flex', justifyContent:'center', marginTop:'5px'},
dustDeposition: {display:'none', justifyContent:'center', marginTop:'5px'}
});
}
用法如下:
<Grid container spacing={3} style={displaySettings.tradeWaterGrabSample}>
</Grid>
<Grid container spacing={3} style={displaySettings.tradeWaterCompositeProgram}>
</Grid>
<Grid container spacing={3} style={displaySettings.soilVapourGrabSample}>
</Grid>
等等..
更新:因此,在我在这里实施解决方案后,我的代码中出现了一些小错误......这可能会被忽视,在这里为面临相同问题的任何人添加:
const classes = UpdateSampleStyle(show);
改为
const classes = UpdateSampleStyle({show});
类名改为类名
【问题讨论】:
标签: css reactjs styled-components