javascript - 已解决 : React-day-picker Daypicker Input loses focus when using custom input component

标签 javascript reactjs react-day-picker

工作沙箱是 https://codesandbox.io/s/react-day-picker-base-h9fv6

我一直在尝试实现一个简单的日期选择器输入,您可以在输入字段中输入日期并在选择器中进行选择。

问题是当我使用自定义输入时, <DayPickerInput component ={CustomInput}.../> ,使用选择器时输入会失去焦点。如果没有自定义输入,这种情况就不会发生。在文档中它说

"If you want to keep the focus when the user picks a day, the component class must have a focus method."

但是我不确定应该如何实现这个。

最佳答案

如果你需要一个带有焦点方法的自定义组件,我认为你需要使用类组件,并且 refs :

class Input extends React.Component {
  constructor(props) {
    super(props);
    this.inputRef = React.createRef();
  }

  focus() {
    this.inputRef.current.focus();
  }

  render() {
    return <input {...this.props} ref={this.inputRef}/>
  }
}

关于javascript - 已解决 : React-day-picker Daypicker Input loses focus when using custom input component,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58113869/

相关文章:

javascript - 如何从nodejs项目中的另一个文件访问一个文件

javascript - 从组件中获取内容

javascript - Heroku - Express 和 React 应用程序在部署时显示空白屏幕

javascript - 日期选择器月/年在 iOS 上不起作用

react-day-picker - 在 react 日选择器输入中修改输入字段的宽度

reactjs - 监听react-day-picker输入 'change'事件

javascript - Highcharts csv 导出问题

javascript - 游戏 API 动画循环

javascript - 为什么 google.load 会导致我的页面变成空白?

reactjs - 使用 TypeScript : why is the type for the state lost when useState with a callback as the updater 使用react