react-native - React Native 和 { flex : 1 }

标签 react-native flexbox

设置规则的确切目的是什么flex: 1许多 React Native 组件?

很多时候我可以看到这个规则适用于不同的组件。有时这条规则显然是多余的。有时显然没有,但没有它,布局似乎工作得很好。

那么,这条规则到底要做什么呢?

最佳答案

如果组件在不使用 flex: 1 的情况下呈现良好显然不需要。您不妨删除不需要的样式。什么 flex: 1是它告诉组件尽可能多地占用空间。

例如:

<View style={{ flex: 1, backgroundColor: '#cccccc' }}>
    <Text>Hi</Text>
</View>

这将跨越整个屏幕。

但是,如果您在 DOM 中的同一级别放置另一个 View ,则两个 View 将占用相等的空间,即屏幕将分为两部分。

像这样:
<View style={{ flex: 1 }}>
    <View style={{ flex: 1, backgroundColor: '#cccccc' }}>
        <Text>View one</Text>
    </View>
    <View style={{ flex: 1, backgroundColor: '#eaeaea' }}>
        <Text>View two</Text>
    </View>
</View>

我同意 flexbox 有点令人困惑。但是一旦掌握了窍门,您就会学习如何操作 View 。

编辑:始终使用父组件包装子组件以避免潜在的运行时错误。

关于react-native - React Native 和 { flex : 1 },我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35998899/

相关文章:

javascript - React Native setInterval 函数适用于具有不同持续时间的多个函数

react-native - React Native 在 android 上的运行速度非常慢

html - 将元素放置在具有任意宽度但定义跨度的网格布局中

html - 标题中的列表项不是很居中(使用 Flexbox)

android - 获取请求在 iOS 上显示响应,但不适用于 Android

javascript - 应用程序中的 WebSocket

react-native - 语法错误 : 'import' and 'export' may appear only with 'sourceType: module' (1:0)

css - iMac 5k 分辨率的媒体查询

css - flex 的 chalice 布局

css - 在 IE11 和 IE10 中与 flexbox 垂直对齐