2

我试图让 SingleDatePicker 上出现清除日期按钮。查看文档我所要做的就是将 showClearDate 属性添加到 SingleDatePicker。这就是我实现它的方式:

<SingleDatePicker 
    date={null}
    isOutsideRange={ (date) => {return false} }
    id={detail.name}
    showClearDate={true}
    focused={focused}
    numberOfMonths={ 1 }
    onDateChange={ (date) => { handleDateChange( momentToISO(date) )}}
    onFocusChange={({ focused }) =>{ 
      handleFocusChange(focused) 
      }
    }
  />

如果我删除 showClearDate 属性(当然不显示按钮),Evertying 工作正常,但是当我添加此属性时,我得到一个异常“无法读取未定义的 onClearDateMouseEnter 属性”

以下内容取自 react-dates SingleDatePickerInput.jsx,显示了错误发生的位置。

 {showClearDate && (
    <button
      {...css(
        styles.SingleDatePickerInput_clearDate,
        small && styles.SingleDatePickerInput_clearDate__small,
        !customCloseIcon && styles.SingleDatePickerInput_clearDate__default,
        !displayValue && styles.SingleDatePickerInput_clearDate__hide,
      )}
      type="button"
      aria-label={phrases.clearDate}
      disabled={disabled}
      onMouseEnter={this.onClearDateMouseEnter} // here
      onMouseLeave={this.onClearDateMouseLeave} // i imagine here too
      onClick={onClearDate}
    >
      {closeIcon}
    </button>
  )}

文档中没有提到必须提供函数 onClearDateMouseEnter 函数或代码中对它的任何其他引用。

我在这里想念什么?

4

1 回答 1

0

我有一个类似的问题。我收到相同的错误“SingleDatePickerInput.js:236 Uncaught TypeError: Cannot read property 'onClearDateMouseEnter' of undefined”。

看起来他们在17.1.1中修复了它。让我们看看这是否有帮助,我会尽快测试它。

于 2018-11-26T10:14:28.547 回答