条带元素“ createToken()”无法解析

时间:2019-06-15 17:41:10

标签: angular stripe-payments react-stripe-elements

我目前正在将条形元素集成到我的角度应用程序中,作为结帐流程的一部分。我遵循了有关集成的教程,但似乎stripe.createToken承诺没有被解决或未被调用。

在我的HTML中,正在安装条纹卡元素

<div class="pay-interface">
  <form id="payment-form" action="" method="POST" class="pay-interface-main">
    <p class="pay-header">Checkout</p>
    <p class="pay-sub">{{item_name}} for ${{item_price / 100}}</p>
    <div id="card-element" class="card-info-element" #CardInfoElement></div>
    <div class="pay-email-input-box">
      <div class="pay-email-icon icon-holder user-icon dark-icon small-icon"></div>
      <input class="pay-email-input" placeholder="Email" type="email" [(ngModel)]="email" name="email">
    </div>
    <p class="card-error error-text">{{error_message}}</p>
    <button class="card-submit-but" type="submit" (click)="submitCard($event)">Submit</button>
  </form>
</div>

在ngOnInit()中安装

ngOnInit() {
    let model = this;  //model reference is for simplicity, acts the same as this even in callbacks
    //set card
    this.card = elements.create('card');
    //set card element to info element
    this.card.mount(this.CardInfoElement.nativeElement);
    this.card.addEventListener('change', (error) => {
      if (error.error) console.error(error);           //handling errors is correctly logging in console
    });
  }

当我提交表单时,'createToken()'承诺没有得到解决或调用

public submitCard(e) {
    e.preventDefault();
    let model = this;
    model.error_message = '';
    console.log('submitting')       //called and being logged, submit is working  
    console.log(stripe.createToken(model.card))
    //submit stripe card
    stripe.createToken(model.card)
      .then(result => {
        console.log(result)       //not logging token or error
      })
}

即使我传递了有效的card元素并指定了'.then(result)',为什么'stripe.createToken()'仍未得到解决?可能是因为在索引或其他内容中初始化了“条带化”?

0 个答案:

没有答案