使用react-native-form-generator时,Undefined不是对象

时间:2017-12-06 15:50:08

标签: react-native

尝试使用react-native-form-generator设置简单表单时出现此错误:

undefined is not an object (evaluating '_react3.default.PropTypes.string')

我认为它与react-native-form-generator有某种依赖性问题,但查看其docs示例并不能让我相信我没有导入任何必要的内容。谷歌搜索错误消息让我觉得我只需要包含PropTypes库,但我尝试了,但没有运气。

检查此问题:https://github.com/MichaelCereda/react-native-form-generator/issues/123

说3天前他们解决了这个问题,我今天刚安装了这个库。我想我会在这里展示我的代码,看看是否有人有任何想法,并寻找新的表单库。

以下是代码:

import React, { Component } from 'react';
import { Form, InputField, Seperator } from 'react-native-form-generator';
import { Button } from 'react-navigation';
//import PropTypes from 'prop-types';

var FormHolder = <Form 
            ref="signInForm" 
            onChange={this.handleFormChange.bind(this)}
            label="Sign In">
              <Seperator/>
              <InputField
                ref="email"
                label="Email"
              />
              <InputField
                ref="password"
                label="Password"
              />

              // <Button title="Log In" />

            </Form>


class LogInForm extends React.Component {
  constructor(props){
    super(props);

    this.state = {
      formData: {}
    }
  }

  handleFormChange(formData){


    this.setState({formData:formData});
    this.props.onFormChange && this.props.onFormChange(formData);
  }


  render(){
    return (FormHolder);
  }
}


export default LogInForm 

我正在使用React 16.0.0和react-native 0.50.3

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

似乎react-native-form-generator没有更新来修复此道具类型问题,因此您需要通过替换此模块的js文件中的所有propTypes导入来更正它,例如someone did in this PR