TypeError: невозможно прочитать свойство validateFields неопределенного ReactJS

У меня две страницы addressForm.js и index.js. На странице addressForm.js написан код для формы. Пример кода показан ниже.

<Col >
                    <div style = {{'height': '45px','display':'flex'}}> 
                    <label style = {{'color': '#f5222d', 'paddingTop': '10px','fontFamily': 'SimSun'}}>*</label>&nbsp;
                    <label style = {{'width':'74px','paddingTop':'8px'}}>Customer Name:</label>                       
                        <FormItem >
                        {getFieldDecorator('Name', {
                        initialValue: '',
                        rules: [{
                            required: true, 
                            message: (
                              <Tooltip
                                visible = {true} placement = "topRight"
                                title = "Please Input Customer Name"
                              />
                            ),
                        }],
                        })(
                        <Input placeholder = "Customer Name" style = {{'width':'164px'}} onChange = {(e)=>{e.preventDefault(); e.stopPropagation();                                   
                            this.handleChangeEvent(0,e, 'Name')}}/>
                        )}                    
                    </FormItem>
                    </div>
                    </Col>

На странице index.js функции для формы написаны (Что будет при нажатии кнопки Представлять на рассмотрение). Образец кода:

handleOk = () => {
    this.props.form.validateFields((err, values) => {
        if (!err) {
          /* Code.......*/
 }
    });
    }

Проблема в том, что проверка не работает (т. Е. Проверка проверки не выполняется, и я получаю эту ошибку).

Должен ли я импортировать что-нибудь на страницу index.js, чтобы избежать ошибки?

Какую ошибку вы получаете?

sandy 06.12.2018 07:43

TypeError: невозможно прочитать свойство validateFields неопределенного ReactJS

Jane Fred 06.12.2018 07:47

this.props.form не определен. Вы можете это проверить ... stackoverflow.com/questions/41296668/…

sandy 06.12.2018 07:53
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
0
3
3 081
3

Ответы 3

Что-то в ваших реквизитах не передается или не определяется правильно, что приводит к ошибке TypeError. Похоже, вам может потребоваться явно передать props в вашу функцию handleOk - хотя с предоставленными фрагментами это трудно сказать.

Из документацияform должен быть декорирован Form.create.

If the form has been decorated by Form.create then it has this.props.form property.

class CustomizedForm extends React.Component {}

CustomizedForm = Form.create({})(CustomizedForm);

вы можете решить эту проблему, попробовав этот код:

class Devices extends React.Component {
   .................
}

Devices = Form.create({})(Devices);
export default Devices;

Другие вопросы по теме