尝试使用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
感谢您的帮助
答案 0 :(得分:0)
似乎react-native-form-generator
没有更新来修复此道具类型问题,因此您需要通过替换此模块的js文件中的所有propTypes导入来更正它,例如someone did in this PR