当前位置: 首页 > 知识库问答 >
问题:

未捕获的TypeError:超级表达式必须为null或函数,而不是未定义的(…)

龙哲
2023-03-14

跟踪这个问题的问题无法解决我的问题。

reactjs给出错误未捕获类型错误:超级表达式必须为空或函数,而不是未定义

我的反应版本是"^15.3.1"。

我添加了下面的代码片段

import React from 'react';
import { ButtonInput } from 'react-bootstrap';
import {Form,ValidatedInput} from 'react-bootstrap-validation';

class myComponent extends React.Component {
  constructor(props) {
    super(props);
    this.handleValidSubmit = this.handleValidSubmit.bind(this);
    this.handleInvalidSubmit = this.handleInvalidSubmit.bind(this);

  }
  handleValidSubmit(values){

  }
  handleInvalidSubmit(errors,values){

  }
  render() {
    return (
        <Form   onValidSubmit={this.handleValidSubmit}
                onInvalidSubmit={this.handleInvalidSubmit}>

                <ValidatedInput
                    type='text'
                    label='Email'
                    name='email'
                    validate='required,isEmail'
                    errorHelp={{
                        required: 'Please enter your email',
                        isEmail: 'Email is invalid'
                    }}
                />

                <ValidatedInput
                    type='password'
                    name='password'
                    label='Password'
                    validate='required,isLength:6:60'
                    errorHelp={{
                        required: 'Please specify a password',
                        isLength: 'Password must be at least 6 characters'
                    }}
                />

                <ValidatedInput
                    type='password'
                    name='password-confirm'
                    label='Confirm Password'
                    validate={(val, context) => val === context.password}
                    errorHelp='Passwords do not match'
                />


                <ValidatedInput
                    type='checkbox'
                    name='agree'
                    label='I agree to the terms and conditions'
                    validate='isChecked'
                />

                 <ButtonInput
                    type='submit'
                    bsSize='large'
                    bsStyle='primary'
                    value='Register'
                />

            </Form>
    );
  }
}

module.exports = myComponent;

共有1个答案

贝钧
2023-03-14

似乎与react bootstrap版本存在冲突

降级您的react bootstrap版本以与react引导验证兼容可能有效。

官方发行线索在这里。在作者发布更新以修复此兼容性问题之前,您可能需要降级react引导版本,即使它是次优的“解决方案”。

 类似资料: