React Native组件的flex属性的“默认”值是什么?

kcugc4gi  于 2023-01-21  发布在  React
关注(0)|答案(1)|浏览(125)

我在react原生应用中有一个简单的按钮组件,只用styled-components就可以完成,如下所示:

const ButtonContainer = styled.TouchableOpacity`
  border-radius: 12px;
  margin: 6px;
  flex-basis: ${props => props.flexBasis || "20%"};
  background: ${props => props.backgroundColor || "orange"};
  justify-content: center;
  align-items: center;
  flex: ${props => props.flex || 0};
`;

因此,当我传入一个像<ButtonContainer flex="1" />这样的flex属性时,我希望它填充可用空间,它按预期工作;但当我不传入flex属性时,我希望它表现得像我从未设置过它一样(不要占用整个可用空间)。
这不起作用。它仍然占据了所有可用的空间。当我把flex: ${props => props.flex || 0};行全部去掉时,它是起作用的,但有时我想把它设置为flex: 1(可重用组件)

那么,响应本机组件中的默认flex设置是什么?

我已经尝试了undefinednull-1,但没有任何效果。

3qpi33ja

3qpi33ja1#

设置Flex:对我都不管用,所以-

const Component = styled.View`
  flex: ${props => props.flex || 'none'};
`;

相关问题