0

我在使用 ExtReact 6.5.2 绑定两个日期选择器(“开始”和“结束”)时遇到问题。这是代码示例minDatemaxDate

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.26.5.3DatePickerField版本的示例代码块时,即使尝试运行 Sencha 的默认示例代码,也会出现以下错误:

Uncaught ReferenceError: Ext is not defined
    at app.js:1

我会使用 Sencha 自己的ExtReact fiddler提供一个小提琴,但这似乎也有运行它自己的示例代码的问题。:/

据我了解,应该不需要额外的功能或需要从事件触发。在 React 中,对 的更改state应该适当地maxDate重新minDate配置DateFieldPicker.

任何帮助是极大的赞赏...

4

1 回答 1

0

据 Sencha 报告, and的功能显然在 6.5.1 中不再正常工作(在 6.5.0 中工作)。minDatemaxDate

显然,minDateand属性随后在 ExtReact 6.5.2 版中maxDate从组件中删除,并且在 6.5.3 版中仍然缺失。DatePickerField相关的 getter 和 setter 也被删除。

于 2018-04-15T14:12:07.107 回答