TypeError:无法读取未定义的属性“ startDate”

时间:2019-06-18 06:38:50

标签: javascript reactjs

我的React组件出现以下错误

TypeError: Cannot read property 'startDate' of undefined

我知道这是因为我没有绑定我的功能。当我的hour中有localStorage时,它可以工作。但是现在当我在custom中放入localStorage时。它也可以在具有hourcustom的componentWillMount中工作。这是我的代码

class Home extends Component {
  constructor (props) {
    super(props)
    this.state = {
      filterType: this.getFilterType(localStorage.getItem('daysFilter') ? localStorage.getItem('daysFilter') : 'today'),
    }
  }
    getFilterType (type) {
    let filterType = 'hour'
    if (type === 'today') {
      filterType = 'hour'
    }
    if (type === "custom" ){
      const startDate = this.state.startDate
      const endDate   = this.state.endDate
    }
    return filterType
  }
}

但是我需要知道如何在构造函数中绑定我的函数?

1 个答案:

答案 0 :(得分:1)

在实例化this.state时,您正在调用getFilterType(type),它使用尚未初始化的this.state