从react上传img到laravel后端后。我想显示它,但它不显示。img上传正确,路径上传到数据库,但当我试图显示它。它不工作
React code
` useEffect(() => {
axiosClient
.get("/getItems")
.then((data) => {
setAllItem(data.data.items);
console.log(data.data.items);
})
.catch((err) => console.log(err));
}, []);
{Item.length > 1 &&
Item.map((el) => (
<AllItem
key={el.id}
title={el.title}
price={el.price}
img={`../../../../../storage/images/${el.image}`}
/>
))}
`
字符串
如果我从{../storage....}导入img并显示它,它可以工作,但不是这样
它被正确地提取了,
1条答案
按热度按时间qnyhuwrf1#
在数据库中,您需要写入以
/storage/images/img.png
开头的路径(非绝对路径)。在前端收集完整路径window.location.origin
(或另一个主机)+/storage/images/img.png
。另外,不要忘记使用
php artisan storage:link
来创建指向public目录的链接,否则将无法访问这些文件