[英]react function state is not defined no-undef
我為這樣的按鈕創建了這個 function startStop 來啟動和暫停計時器。 錯誤是“第 108:22 行:'sessionLength' 未定義 no-undef”(第 108 行是此代碼塊中的最后一個“this.setState()”)它與綁定有什么關系嗎? 怎么了?
import React, { Component } from 'react';
import './App.css';
class App extends Component {
state = {
breakLength: 5,
sessionLength: 25,
timerState: "paused",
}
constructor(props) {
super(props)
this.startStop = this.startStop.bind(this)
}
startStop() {
if (this.state.timerState === "paused") {
this.setState({
timerState: setInterval(() => decrement(), 1000)
}, function () {console.log(this.state.timerState)})
}
else if (this.state.timerState !== "paused") {
console.log(this.state.timerState)
clearInterval(this.state.timerState)
this.setState({
timerState: "paused"
}, function () {console.log(this.state.timerState)})
}
this.setState({
sessionLength: sessionLength - remaining
}, function () {console.log(this.state.sessionLength)})
}
sessionLength
是this.state
的成員,因此要訪問它,您需要使用this.state.sessionLength
。
this.setState({
sessionLength: this.state.sessionLength - remaining
}
我認為您應該在構造函數中聲明state
你試試:
constructor(props) {
super(props)
this.state = {
breakLength: 5,
sessionLength: 25,
timerState: "paused",
}
this.startStop = this.startStop.bind(this)
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.