我已经完成了所有事情,但我无法做到。
import React from 'react';
import PropTypes from 'prop-types';
import { Router, Route, Link } from 'react-router';
/*skip*/
ContactCreate.propTypes ={
onCreate : React.PropTypes.func
};
我尝试了其他人为解决方案付出的一切,但结果是一样的。代码似乎没有问题,但我不知道问题是什么。
constructor(props) {
super(props);
this.state = {
/*skip*/
this, handleCreate = this.handleCreate.bind(this);
}
handleCreate(contact) {
this.setState({
contactData: update(this.state.contactData, { $push: [contact] })
});
}
/*skip*/
render() {
/*skip*/
return (
<div>
<h1>Contacts</h1>
<input
name="keyword"
placeholder="Search"
value={this.state.keyword}
onChange={this.handleChange}
/>
<div>{mapToComponents(this.state.contactData)}</div>
<ContactDetails
isSelected={this.state.selectedKey != -1}
contact={this.state.contactData[this.state.selectedKey]}
/>
<ContactCreate
onCreate={this.handleCreate}
/>
</div>
);
}
答案 0 :(得分:0)
PropTypes
是从单独的软件包导入的,因此不应该像React.PropTypes.func
一样使用,PropTypes.func
import React from 'react';
import PropTypes from 'prop-types';
import { Router, Route, Link } from 'react-router';
...
ContactCreate.propTypes ={
onCreate : PropTypes.func
};