我正在使用downlaodAsync从我的站点下载产品图像,如果我在fileUri中写了一些目录,以后将无法访问该文件。如果我不写目录名,它将起作用。.我不明白为什么...我的代码:
const Finished = Result.map(async prod => {
const name = `fotos/fotoProd${prod.ref}-1.jpg`;
const path = `${FileSystem.documentDirectory}${name}`;
const image = await FileSystem.getInfoAsync(path);
if (image.exists) {
console.log(`img ${prod.ref} exists`);
} else {
console.log(`do not exists the pic ${prod.ref}..`);
const url = `https://example.com/pics/${prod.ref}-1.jpg`;
await FileSystem.downloadAsync(url, path)
.then(Response => {(
console.log(Response.uri);
})
.catch(error => { console.log(error); });
}
});
Promise.all(Finished).then(() => { this.props.endSync(); });
如果我进行测试:
teste = async () => {
const name = 'fotos/fotoProd001EP-1.jpg';
const path = `${FileSystem.documentDirectory}${name}`;
const image = await FileSystem.getInfoAsync(path);
console.log(path);
if (image.exists) {
console.log('image exists');
} else {
console.log('nope...');
}
}
我得到“不...”。
console.log(Response.uri)是带有'001EP'的console.log(path)。
但是如果我写的“ const name”不带“ fotos /”,它就可以工作。
现在我只需要取出'fotos /',但是我想了解正在发生的事情,并且能够更好地利用目录来组织我的项目。