所以我已经创建了一个Json文件,里面有名人的ID和图片。现在我想从这个Json文件中得到一个随机的图片并显示出来。
到目前为止,我已经尝试过了,但是我得到了一个“未捕获的TypeError:无法读取undefined的属性(阅读'image')。
import images from "../Index.json"
function Celeb() {
const [image, setImage] = useState();
let random = images[Math.floor(Math.random() * images.length)];
const handleNext = () => {
console.log(images[1].image);
setImage(images[random].image);
}
return (
<div className='celeb'>
<div className='celeb_buttons'>
<button className='play_button' onClick={handleNext}>Next</button>
</div>
<div className='pic'>
<img src={image} />
</div>
</div>
例如,如果我将setImage(images[random].image)中的random替换为0,我将从Json文件中获取第一个图像元素,但我无法使用random执行此操作。
2条答案
按热度按时间hgc7kmma1#
random
是一个图像,但您稍后尝试将其用作数字。zazmityj2#
random
已经是图像。此Math.floor(Math.random() * images.length)
部分生成随机索引。我没有看到json文件的结构,但我猜您必须将设置部分更改为