TypeError:_this2.handleSave不是函数

时间:2019-03-04 00:28:14

标签: reactjs

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;

2 个答案:

答案 0 :(得分:0)

您尚未在Events Component中的render函数上方定义函数。

handleSave() {
    alert('ok');
}

谢谢

答案 1 :(得分:0)

handleSave = () => {console.log('handled save')}

<Button handleSave={this.handleSave} />

似乎您没有使用handleSave()做任何事情。您只是在调用它,而没有定义它。