【发布时间】:2023-03-28 00:59:01
【问题描述】:
我正在尝试根据item.imageLinks.smallThumbnail 的值动态选择backgroundImage。
如果我的 API 返回的数组有一个 smallThumbnail URL,那么我想将其用作 backgroundImage 或在 book.png 内使用本地默认 backgroundImage book.png。
下面是我的代码,但是当 item.imageLinks.smallThumbnail 是 undefined 并且它没有使用备用 book.png 时它不起作用但给了我错误:
Type Eror: Cannot Read 'smallThumbnail of undefined
请帮忙。
谢谢
return(
<ol className="books-grid">
{book.map( (item) => (
<li key={item.id}>
<div className="book">
{item.shelf && (
<div className="book-top">
<div
className="book-cover"
style={{ width: 128, height: 193, backgroundImage: `url({${item.imageLinks.smallThumbnail} || ../public/book.png } )` }}></div>
【问题讨论】:
-
您的
imageLinks未定义。这意味着您的对象item没有称为imageLinks的属性。检查您的item对象。 -
我知道它没有图像链接,这是我试图在它不存在时处理的情况。