Вам нужно изменить код, чтобы получить желаемый результат.Вы не можете использовать await в render (), который не является асинхронной функцией.Если вы вызываете асинхронную функцию getTxt без ожидания, она вернет обещание.Таким образом, текстовый файл будет пустым во время рендеринга.Вам нужно использовать состояние для автоматического повторного рендеринга при изменении значения.
// Initialise filetext with state
constructor(props) {
super(props);
this.state = {
filetext: ""
};
}
// Make componentWillMount async and invoke getTxt with await
async componentWillMount() {
let text = await this.getTxt();
this.setState({ filetext: text });
}
//Access filetext from the state so that it will automatically re-render when value changes
render() {
return (
<View style={{ flex: 1 }}>
<TextInput
multiline = {true}
style={{ margin : 10 }}
>{ this.state.filetext }
</TextInput>
<Button onPress = { this.FunctionToOpenFirstActivity } title = 'Save'/>
</View>
);
}