【发布时间】:2021-12-31 00:11:35
【问题描述】:
我对反应非常陌生,正在努力制作一些你可以按下的按钮来掷骰子的东西。现在,我目前只是想让图像可点击,当你点击它时,它会“掷骰子”。但是,我的图片在点击时没有改变,并且我在 VSCode 中没有收到任何错误。任何帮助表示赞赏。
import React from 'react'
import dice1 from './assets/dice1.png';
import dice2 from './assets/dice2.png';
import dice3 from './assets/dice3.png';
import dice4 from './assets/dice4.png';
import dice5 from './assets/dice5.png';
import dice6 from './assets/dice6.png';
function DiceRoll(e) {
var number = Math.floor(Math.random() * 6) + 1;
switch(number) {
case 1: e.target.setAttricute('src', {dice1}); break;
case 2: e.target.setAttricute('src', {dice2}); break;
case 3: e.target.setAttricute('src', {dice3}); break;
case 4: e.target.setAttricute('src', {dice4}); break;
case 5: e.target.setAttricute('src', {dice5}); break;
case 6: e.target.setAttricute('src', {dice6}); break;
default: return <h1>Something went wrong</h1>
}
}
function App() {
return (
<img
src={dice1}
onClick={DiceRoll}
/>
);
}
export default App;
【问题讨论】:
-
只需使用 UseState 并使用它设置图像 src。