2017-04-02 49 views
5

Próbuję wprowadzić elementy Stripe do mojej aplikacji rails, ale nie mogę poprawnie umieścić pliku stripe.js. Oto moja application.htmlWyczyść ReferenceError: Stripe nie jest zdefiniowany - STRIPE ERROR

<%= tag :meta, name: "stripe-key", content: Figaro.env.stripe_publishable_key %> 
<script type="text/javascript" src="https://js.stripe.com/v3/"</script> 
<script type="text/javascript" src="https://js.stripe.com/v2/"></script> 

JS

var stripe = Stripe($("meta[name='stripe-key']").attr("content")) 
var elements = stripe.elements(); 

var card = elements.create('card', { 
    style: { 
    base: { 
     iconColor: '#999', 
     color: '#505652', 
     lineHeight: '40px', 
     fontWeight: 300, 
     fontFamily: 'Helvetica Neue', 

     '::placeholder': { 
     color: '#CFD7E0', 
     }, 
    }, 
    } 
}); 
// Add an instance of the card UI component into the `card-element` <div> 
card.mount('#card-element'); 

FORMULARZ

<form action="/charge" method="post" id="payment-form"> 
    <div class="form-row"> 
    <label for="card-element"> 
     Credit or debit card 
    </label> 
    <div id="card-element"> 
    </div> 
    <div id="card-errors"></div> 
    </div> 

    <button>Submit Payment</button> 
</form> 

Za każdym razem kiedy załadować stronę otrzymuję ten błąd w konsoli Uncaught ReferenceError: Stripe is not defined - STRIPE ERROR. Myślę, że ma coś wspólnego z tym, jak ładuję stripe.js, ale nie jestem pewien?

+1

Pierwszy tag 'script' nie został poprawnie sformatowany. – Artin

Odpowiedz

5

Podejrzewam, że to się dzieje, że Stripe.js ładuje się PO WŁASNEJ javascript. Spróbuj przenieść Stripe.js powyżej własnego javascript w nagłówku.