index.jsx:20未捕获的TypeError:_this2.handleSave不是函数
在这里反应新手,我正在尝试保存被称为mongodb的事件,我们将不胜感激
import React, { Component } from "react";
import Button from "../Buttons/Save";
require('dotenv').config()
class Events extends Component {
state = {
style: {
height: 200,
width: 200
}
};
render() {
return (
<React.Fragment>
<img style={this.state.style} src={this.props.url} alt="" />
<p>Event: {this.props.name}</p>
<p>
<a href={this.props.link}>See Event</a>
</p>
<Button handleSave={() => this.handleSave()} />
</React.Fragment>
);
}
}
下面的按钮组件代码
import React, { Component } from "react";
class Save extends Component {
state = {};
render() {
return <button onClick={this.props.handleSave}>Save</button>;
}
}
export default Save;
答案 0 :(得分:0)
您尚未在Events Component中的render函数上方定义函数。
handleSave() {
alert('ok');
}
谢谢
答案 1 :(得分:0)
handleSave = () => {console.log('handled save')}
<Button handleSave={this.handleSave} />
似乎您没有使用handleSave()做任何事情。您只是在调用它,而没有定义它。