Я использую форму обратной связи для сбора информации о клиенте и карте и получения токена. Пока это прекрасно работает. После того, как всплывающее диалоговое окно завершено, вызывается функция onToken для отправки токена в бэкэнд, проблема в том, что мне нужна другая информация из состояния для отправки в бэкэнд, и я не знаю, как получить доступ к этому
Я не могу получить доступ к this.state
async onToken(token){
console.log(this.state) //Error, state undefined
console.log('Stripe Token: ', token)
var result = await API.post("videos", "videos/offer/"+this.state.videoid, {
body: {'price': this.state.pricePerMin, 'token': token}
});
}
Функция рендеринга:
StripeCheckout
stripeKey=""
name=""
token={this.onToken}
label={'Pay ' + this.state.price + '€ and start video analysis'}
description={this.state.price+'€ (' + this.state.minutesToPay + ' x ' + this.state.pricePerMin + '€)'}
amount={10 * 100} // cents
currency="EUR"
locale="de"
shippingAddress={false}
billingAddress={true}
// Note: enabling both zipCode checks and billing or shipping address will
// cause zipCheck to be pulled from billing address (set to shipping if none provided).
zipCode={true}
alipay={false} // accept Alipay (default false)
bitcoin={false} // accept Bitcoins (default false)
allowRememberMe // "Remember Me" option (default true)
/>
Чтобы сделать вызов API, мне потребуется видеоид из состояния в функции onToken.