我希望我的文本流到下一行,但 Flex 不允许我这样做?

I want my text to flow to my next line but flex is not letting me do it?

我希望我的应用程序在目标部分下方添加文本,但 flex 不允许我这样做,即使我在原生中创建新组件也是如此 P.S 仍然是初学者

import React, { useState } from "react";
import { StyleSheet, View, TextInput, Button, Text } from "react-native";

export default function App() {
  return (
    <View style={styles.Container}>
      <View style={styles.GoalInp}>
        <TextInput
          placeholder="Course Goal"
          style={{ overflow: "scroll" }}
          onChangeText={goalInputHandler}
          value={enteredGoal}
        />
      </View>
      <View>
        <Button title="ADD" onPress={addGoalHandler} />
      </View>
      <View>
        {couseGoals.map(goal => (
          <Text>{goal}</Text>
        ))}
      </View>
    </View>
  );
}

const styles = StyleSheet.create({
  Container: {
    padding: 50,
    flexDirection: "row",
    justifyContent: "space-between",
    alignItems: "center"
  },
  GoalInp: {
    borderWidth: 1,
    width: "80%",
    padding: 10,
    borderColor: "black"
  }
});

我认为您使用了很多 Vieuw 元素。 例如,您应该在需要打印文本的地方使用 Text

但我想我有。 您将所有内容包装到 View 中,样式为;

flexDirection: "row",

如果您不想将整个 View 放在一行中,那就不太好了.... 问题解决了吗?

你需要把listing放到Container View外面,因为Container的flex-direction是row,所有item都会排成一行,包括form。

我修改后的代码如下

  <View style={styles.wrapper}>

    <View style={styles.Container}>
      <View style={styles.GoalInp}>
        <TextInput
          placeholder="Course Goal"
          style={{ overflow: "scroll" }}
        />
      </View>
      <View>
        <Button title="ADD" onPress={this.addGoalHandler} />
      </View>
    </View>

    <View>
      {this.state.couseGoals.map(goal => (
        <Text>{goal}</Text>
      ))}
    </View>

  </View>



const styles = StyleSheet.create({
  wrapper:{
    flex:1,
  },
  Container: {
    padding: 50,
    flexDirection: "row",
    justifyContent: "space-between",
    alignItems: "center"
  },
  GoalInp: {
    borderWidth: 1,
    width: "80%",
    padding: 10,
    borderColor: "black"
  },
});