2017-12-08 3 views
0

Folgende React-Stripe-Elemente Beispiel in Readme-Datei. Ich kann die Stripe-Form richtig einrichten, aber ich bekomme einen Fehler beim Drücken der Pay-Taste.react-stripe-elements getting "Kann Property nicht 'Property' von undefined lesen"

Uncaught TypeError: Cannot read property 'props' of undefined 
    at handleSubmit (paymentForm.jsx?9f51:10) 
    at HTMLUnknownElement.callCallback (react-dom.development.js?cada:540) 
    at Object.invokeGuardedCallbackDev (react-dom.development.js?cada:579) 
    at Object.invokeGuardedCallback (react-dom.development.js?cada:436) 
.... 

Mein paymentForm.jsx ist wie folgt:

Import Reagieren von 'reagieren'; importiere {injectStripe} von 'react-stripe-elements';

Import PaymentCard von './paymentCard'

class PaymentForm extends React.Component { 

    handleSubmit(ev) { 
    ev.preventDefault(); 
    this.props.stripe.createToken({name: 'Jenny Rosen'}).then(({token}) => { 
     console.log('Received Stripe token:', token); 
    }); 
    } 

    render() { 
    return (
     <form onSubmit={this.handleSubmit}> 
     <PaymentCard /> 
     <button>Pay</button> 
     </form> 
    ) 
    } 

} 
export default injectStripe(PaymentForm); 
+1

Versuchen Hinzufügen 'Super (Requisiten);' in Ihrem Konstruktoreigenschaft –

Antwort

1

Ok Problem wird durch die Bindung der die Funktion der Klasse gelöst

constructor(props) { 
    super(props); 
    this.handleSubmit = this.handleSubmit.bind(this) 
    } 
Verwandte Themen