Javascript 如何在react native中指定值
我从api中得到4个值[10,20,22,26]。这些值被分配给[A,B,C,D],我有一个滑块,上面有这些值[1,2,3,4] 我需要的是,当您在滑块中选择1时,它将为您提供A的值(在本例中为10)。如果在滑块中选择2,它将为您提供B值(即20),依此类推 你知道我怎么做吗 这是我的代码:Javascript 如何在react native中指定值,javascript,reactjs,react-native,Javascript,Reactjs,React Native,我从api中得到4个值[10,20,22,26]。这些值被分配给[A,B,C,D],我有一个滑块,上面有这些值[1,2,3,4] 我需要的是,当您在滑块中选择1时,它将为您提供A的值(在本例中为10)。如果在滑块中选择2,它将为您提供B值(即20),依此类推 你知道我怎么做吗 这是我的代码: const [sliderValue2, setsliderValue2] = useState(); const [A, setvA] = useState(); const [B, setvB] = u
const [sliderValue2, setsliderValue2] = useState();
const [A, setvA] = useState();
const [B, setvB] = useState();
const [C, setvC] = useState();
const [D, setvD] = useState();
const [pterms, setpterms] = useState([]);
const [value, setValue] = useState(setpterms[0]);
<View style={{alignItems: 'stretch', justifyContent: 'center' }}>
<Slider
maximumValue={D > 0 ? 4: 3 }
minimumValue={1}
step={1}
value={pterms.indexOf(value)}
onValueChange={index => setValue(pterms[index])}
/>
<View style={styles.plazos}>
<Text style={styles.plazo1}>{A} meses</Text>
<Text style={styles.plazo2}>{B} meses</Text>
<Text style={styles.plazo3}>{C} meses</Text>
{D > 0 ? <Text style={styles.plazo3}>{D} meses</Text>: null }
</View>
<Text style={styles.slideText}>Su credito por: ${A}MXN</Text>
<Text style={styles.slideText}>Usted recibe: ${A}MXN</Text>
<Text style={styles.slideText}>A un plazo de: {sliderValue2} meses</Text>
<Text style={styles.PaymentText}>Su pago: ${A}.00 MXN</Text>
</View>
您可以存储滑块的值,并将其用作API中数组的索引,如下所示():
导出默认函数App(){
常量值FROMAPI=[10,20,22,26];
const[value,setValue]=useState(valuesFromApi[0]);
返回(
{value}
setValue(valuesFromApi[index])}
/>
);
}
当我把它传递给hooks时,它会打印字符,例如,和错误的数字示例的功能是否如您所期望的那样?是的,我不确定这是如何调用我的数组或其他东西。您可以用您的实现更新您的原始问题吗编辑,正如您所看到的,我只更改了我的pterms的值(在console.log中显示24,36,48
useEffect(() => {
async function BCcontroller() {
const vCreationUser = 6;
const vSolicitudeId = 8;
const { data } = await ForceApi.post(`/ConsultBCController.php`, {vSolicitudeId, vCreationUser});
const values = data.terms;
setpterms(data.terms);
const [termA, termB, termC, termD] = values.split(',');
setvA(Number(termA));
setvB(Number(termB));
setvC(Number(termC));
setvD(Number(termD));
}
BCcontroller();
}, []);
export default function App() {
const valuesFromApi = [10, 20, 22, 26];
const [value, setValue] = useState(valuesFromApi[0]);
return (
<View style={styles.container}>
<Text style={styles.paragraph}>{value}</Text>
<Slider
minimumValue={0}
maximumValue={3}
step={1}
value={valuesFromApi.indexOf(value)}
onValueChange={index => setValue(valuesFromApi[index])}
/>
</View>
);
}