как связать «это» при передаче React реквизита в axios.post - PullRequest
0 голосов
/ 11 декабря 2018

Я использую элемент react-paypal-express-checkout.Существует способ передачи функций при успешной оплате.В этом методе я хочу создать axios.post, где я передаю данные на сервер.

Данные находятся в состоянии родительского компонента и передаются следующим образом:

<Pay value={this.state.value} />

Мой axios.post в дочернем (<Pay />) элементе:

export default class Pay extends React.Component {
  render() {
    const onSuccess = payment => {
      axios.post(
        "http://localhost:3000/updateValue", {this.props.value}
      );
    };
    return (
      <div>
        <PaypalExpressBtn
          onSuccess={onSuccess}  
        />
      </div>
    );
  }
}

Ошибка, указанная для this.props.value, заключается в том, что this является зарезервированным словом.Я предполагаю, что this не связан должным образом, но я не знаю, как это сделать.Любая помощь приветствуется!

1 Ответ

0 голосов
/ 11 декабря 2018

Проблема не связана с привязкой функции.onSuccess - это стрелка, она не может и не должна быть связана.{this.props.value} неверный синтаксис для литерала объекта.

В случае, если value содержит данные, которые должны быть опубликованы, оно должно быть:

  axios.post(
    "http://localhost:3000/updateValue", {data: this.props.value}
  );
...