【发布时间】:2020-03-17 16:02:43
【问题描述】:
我如何setState 并推送到数组?
目前什么都没有发生...
这是我的代码
状态
const [imageData, setImageData] = useState([]);
裁剪图像
const choosePicture = () => {
ImagePicker.openPicker({
width: 300,
height: 400,
cropping: true,
})
.then(image => {
onSelectedImage(image);
})
.catch(error => {
console.log(error);
});
};
设置状态
const onSelectedImage = image => {
let newDataImg = imageData;
let item = {
id: Date.now(),
url: image.path,
};
newDataImg.push(item);
setImageData(newDataImg);
};
console.log(imageData);
和平面列表
<FlatList
data={imageData}
renderItem={itemData => (
<View>
<Image
source={{uri: itemData.item.url}}
style={{width: 200, height: 200}}
/>
</View>
)}
keyExtractor={item => item.id.toString()}
/>
【问题讨论】: