我正在尝试为某些统计数据渲染一些条形图,我希望它们的颜色取决于它们所具有的值。我尝试使用if语句,switch但它似乎不起作用
因为switch它将使用该default值,而if将使用第一个检查的值。
对不起我的英语😂
import React from "react";
import { View, Text, StyleSheet } from "react-native";
const Stats = ({ statName, value }) => {
let color;
if (value == 0) {
color = "";
} else if ((value) => 1 && value < 25) {
color = "red";
} else if (value >= 25 && value < 50) {
color = "orange";
} else if (value >= 50 && value < 90) {
color = "yellow";
} else if (value >= 90) {
color = "green";
}
// switch (value) {
// case value >= 1:
// color = "red";
// break;
// case value >= 25:
// color = "orange";
// break;
// case value >= 50:
// color = "yellow";
// break;
// default:
// color = "";
// }
return (
<View style={styles.container}>
<Text>{statName}</Text>
<Text>{value}</Text>
<View
style={[styles.bar, { width: value * 1.5, backgroundColor: color }]}
/>
</View>
);
};
const styles = StyleSheet.create({
container: {
flexDirection: "row",
alignItems: "center",
justifyContent: "center",
},
bar: {
height: 20,
},
});
export default Stats;
catspeake
手掌心
慕村225694
相关分类