[英]Pass a promise to a component React Native
I'm filling my data array with an API call like so我正在用 API 调用填充我的数据数组,就像这样
const getData = async () => {
const response = await fetch(
"URL"
);
var data = await response.json();
let arr = [];
for (let i = 0; i < data.length; i++) {
arr.push(data[i]);
}
return arr;
};
How do i pass it to a react Native component, with it being a promise?我如何将它传递给反应本机组件,它是 promise?
return(
<View style={styles.container}>
<Swiper
cards={ getData } //Here
renderCard={(card) => {
return (
<View style={styles.card}>
<Text style={styles.text}>{card}</Text>
</View>
);
}}
</Swiper>
);
Put the fetch function in a useEffect
in the parent component and make arr
a state variable将 fetch function 放在父组件的useEffect
中,并使arr
成为 state 变量
const [arr, setArr] = useState([])
useEffect(()=>{
const getData = async () => {
const response = await fetch(
"URL"
);
var data = await response.json();
setArr(data)
}
getData();
},[])
return (
<View style={styles.container}>
<Swiper
cards={arr} //Here
renderCard={(card) => {
return (
<View style={styles.card}>
<Text style={styles.text}>{card}</Text>
</View>
);
}}
</Swiper>
</View>)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.