我在使用 ExtReact 6.5.2 绑定两个日期选择器(“开始”和“结束”)时遇到问题。这是代码示例minDate
:maxDate
import React, { Component } from 'react';
import { Container, DatePickerField, FormPanel, TextField } from '@extjs/ext-react';
export default class MyExample extends Component {
constructor(props) {
super(props);
this.state = {
beginPickerValue: null,
endPickerValue: null
};
}
render() {
return (
<Container layout="center">
<FormPanel
defaults={{ clearable: true, editable: false }}
shadow
>
<DatePickerField
label="Begin"
onChange={(datePicker, newValue) => this.setState({beginPickerValue: newValue})}
maxValue={this.state.endPickerValue}
/>
<DatePickerField
label="End"
onChange={(datePicker, newValue) => this.setState({beginPickerValue: newValue})}
minValue={this.state.endPickerValue}
/>
</FormPanel>
</Container>
)
}
}
在我的设置中,使用 Chrome,我收到以下错误:
Uncaught Error: Date object or string in dateFormat required
at new Ext.Error (ext.js:5817)
at Function.raise (ext.js:5843)
at Object.Ext.raise (ext.js:5860)
at constructor.applyMaxDate (ext.js:59619)
at constructor.setter [as setMaxDate] (ext.js:8892)
at Ext.Configurator.configure (ext.js:9171)
at constructor.initConfig (ext.js:9771)
at constructor (ext.js:13108)
at constructor (ext.js:23660)
at constructor.callParent (ext.js:9746)
我在 Sencha 的“示例”部分中使用了上面的确切代码DatePickerField
(请参阅下面的链接)。代码运行并呈现字段,但在设置日期时似乎没有观察到最大和最小绑定。
请注意,在撰写本文时,为了进行演示,您必须在ExtReact 6.5.1 文档中使用 Sencha 的“示例”代码块进行复制。使用6.5.2或6.5.3DatePickerField
版本的示例代码块时,即使尝试运行 Sencha 的默认示例代码,也会出现以下错误:
Uncaught ReferenceError: Ext is not defined
at app.js:1
我会使用 Sencha 自己的ExtReact fiddler提供一个小提琴,但这似乎也有运行它自己的示例代码的问题。:/
据我了解,应该不需要额外的功能或需要从事件触发。在 React 中,对 的更改state
应该适当地maxDate
重新minDate
配置DateFieldPicker
.
任何帮助是极大的赞赏...