在加载时,我收到了要从用户视图中隐藏的图像URL列表。
我也有所有原始图片URL的数组。
我想创建一个不包含隐藏图像URL的新数组。
我正在使用array.filter()
函数,但没有从数组中删除URL。
我认为这是我加载函数的方式,因为隐藏的图像最初是空的,然后又重新加载并且在那里具有其值,但是我不确定如何使它正常工作。
>感谢您的见解。
useEffect(() => {
async function getImage(jobID) {
const imageURL = await Storage.list(`${jobID}/completed/`);
let imagesAsArray = [];
for (let i = 0; i < imagesToDownload.length; i++) {
const imagesDownloaded = await getURLFromS3(imagesToDownload[i]);
imagesAsArray.push(imagesDownloaded)
}
return imagesAsArray
}
async function onLoad() {
try {
const downloadedImage = await getImage(job);
if (hiddenImages !== null) {
hide(downloadedImage)
} else {
setImages(downloadedImage);
}
} catch (e) {
alert(e);
}
}
onLoad();
}, [job]);
function hide(imagesToFilter) {
const ImagesToView = (imagesToFilter).filter(image =>(!image.includes(hiddenImages)));
console.log(ImagesToView)
setImages(ImagesToView);
}
hiddenImages
值示例:
console.log(ImagesToView)