[英]How can I print a switch's ON/OFF state?
如本例所示: https : //reactnative.dev/docs/switch.html我試圖以如下方式打印 Switch 的 ON/OFF 狀態:
import React, { useState } from "react";
import { View, Switch, StyleSheet, Text } from "react-native";
const App = () => {
const [isEnabled, setIsEnabled] = useState(false);
const toggleSwitch = () => setIsEnabled(previousState => !previousState);
return (
<View style={styles.container}>
<Switch
trackColor={{ false: "#767577", true: "#81b0ff" }}
thumbColor={isEnabled ? "#f5dd4b" : "#f4f3f4"}
ios_backgroundColor="#3e3e3e"
onValueChange={toggleSwitch}
value={isEnabled}
/>
<Text> Switch state is: {isEnabled} </Text>
</View>
);
}
const styles = StyleSheet.create({
container: {
flex: 1,
alignItems: "center",
justifyContent: "center"
}
});
export default App;
但是,它不打印{isEnabled}
值。
您用於切換狀態的代碼看起來不錯 - 我認為這個問題更微妙。 布爾值不會在 jsx 中呈現 - 請參閱參考: https ://reactjs.org/docs/jsx-in-depth.html#booleans-null-and-undefined-are-ignored
您可以嘗試在呈現之前將isEnabled
轉換為字符串嗎?
你的錯誤就在這里。 setIsEnabled(previousState => !previousState);
它應該是setIsEnabled(!previousState)
用於設置狀態的方法只是將值作為參數,而不是函數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.