如何改进下面的代码,使应用程序在“input”值为null时不会崩溃?我知道问题出在“const { input } = route.params;“如果我删除它并添加一些文本输入,然后把它放回去,应用程序就可以工作了。但是,当初始值为null时,刷新应用程序将崩溃。如何实现if语句?
这里我呈现的是“input”,也就是TextInput:
export const IznajmiScreen = ({navigation, route}) => {
const { input } = route.params;
return (
<>
<SectionContainer>
<Text>{input}</Text>
</SectionContainer>
</>
);
};
这是我的文本输入屏幕:
export const OpciPodaciOglasInput = ({navigation}) => {
const [input, setInput] = useState("");
return(
<>
<Button title="Save"
onPress={()=>navigation.navigate("Rent a car", {input})}/>
<InputContainer>
<TextInput style={styles.input}
placeholder="300 maximum"
multiline = {true}
maxLength={300}
onChangeText={(text)=> setInput(text)}
returnKeyType='done'
value={input}
onSubmitEditing={()=>{
navigation.navigate('Rent a car',{input});
setInput("");
}}
/>
</InputContainer>
</>
);
};
2条答案
按热度按时间gcuhipw91#
你有没有试过添加一个三元。
bvjxkvbb2#
自从升级expo/react-native/xcode后,我一直在iOS上收到同样的错误。
xcode中的错误指向
node_modules/react-native/Libraries/vendor/emitter/EventEmitter.js
,所以现在你可以自己修补这个文件。打开
node_modules/react-native/Libraries/vendor/emitter/EventEmitter.js
并编辑第105行registration.listener.apply(...
以读取然后运行
npx patch-package react-native
,这将在patches/
文件夹中生成一个文件。现在运行npm install
并重新构建应用程序。它不再为我崩溃时,扩大一个文本输入。