ReactJs-验证PropType
我有下面的道具ReactJs-验证PropType,reactjs,validation,properties,react-proptypes,Reactjs,Validation,Properties,React Proptypes,我有下面的道具 this.props.history.push('/'); 它在尝试验证时抛出错误 AddPerson.propTypes = { history: React.PropTypes.Object, } 我的声明 import React, { Component } from 'react'; import axios from 'axios'; 知道我如何验证这个属性吗 编辑: 所以我的声明现在看起来像 import React, { Component } from
this.props.history.push('/');
它在尝试验证时抛出错误
AddPerson.propTypes = {
history: React.PropTypes.Object,
}
我的声明
import React, { Component } from 'react';
import axios from 'axios';
知道我如何验证这个属性吗
编辑:
所以我的声明现在看起来像
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import axios from 'axios';
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import axios from 'axios';
因为历史不是必需的道具,所以我使用了默认道具
AddPerson.defaultProps = {
history: PropTypes.Object,
};
AddPerson.defaultProps = {
history: PropTypes.Object,
};
希望这对某人有所帮助。应该是这样
AddPerson.propTypes = {
history: React.PropTypes.object
}
而不是
AddPerson.propTypes = {
history: React.PropTypes.Object //should be object
}
所以我的声明现在看起来像
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import axios from 'axios';
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import axios from 'axios';
因为历史不是必需的道具,所以我使用了默认道具
AddPerson.defaultProps = {
history: PropTypes.Object,
};
AddPerson.defaultProps = {
history: PropTypes.Object,
};
您使用的是哪个版本的react?在最新版本中,您必须安装
道具类型
,然后从“道具类型”导入道具类型
然后你可以使用AddPerson.PropTypes
,那不是一个数组,不是一个对象吗?@Aaqib是的,那是它的一部分,是一个旧版本。删除isRequired
,因为OP没有指定。这是一个答案吗?如果没有,请在问题中更新。