は私が書くマウントまたはマウント部品の時間カウントダウンコンポーネント更新することができます。がエラーに反応:のみ
class CountDown extends React.Component {
constructor(props) {
super(props)
const {target} = this.props
this.state = {
target,
}
}
componentDidMount() {
const {target} = this.state
if (target) {
setTimeout(() => {
this.setState({
target: target - 1,
})
}, 1000)
}
}
render() {
const {target} = this.state
return <span>{target}</span>
}
}
それを実行すると、開発コンソールは
setState(...): Can only update a mounted or mounting component. This usually means you called setState() on an unmounted component. This is a no-op. Please check the code for the CountDown component.`
私にはわからない私に言いました私のコードで何が問題なのですか
これはすべてあなたのコードですか?どのようにレンダリングしますか? – Li357
@ Li357 ' ' –
hh54188
このコードブロックにはありません - ここには[作業コードサンドボックス](https://codesandbox.io/s/q7885xzxv4)があります。サイドノート:カウントダウンを続けるには、 'setTimeout'の代わりに' setInterval'を使います。おそらく、<1のときにclearIntervalに条件があります。 –