gpt4 book ai didi

reactjs - 将参数传递给样式化组件

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

如何将参数传递给样式化组件?

我尝试的是创建一个界面和一个样式化的组件:

export interface StyledContainerProps {
topValue?: number;
}

export const StyledContainer: StyledComponentClass<StyledContainerProps> = styled.div`
position: absolute;
top: `${props.topValue || 0}px`;
`;

然后我想像这样使用它:
<StyledContainer 
topValue={123}
>
This has a distance of 123px to the top
</StyledContainer>

但据说 props没有属性 topValue .

最佳答案

实际上你应该收到cannot read property 'topValue' of undefined错误。

使用 insead 函数:

top: ${({ topValue = 0 }) => topValue}px;

还有一点好处 - 您可以使用参数解构并为 topValue 分配默认值如果它不存在(在您的特定情况下 - 默认值为 0 )。

但是,如果您想分配 0在任何情况下 topValue是假的,使用:
top: ${(props) => props.topValue || 0}px;

备注 : 双反引号是多余的。

关于reactjs - 将参数传递给样式化组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53801694/

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