Возможно ли обновить параметры конфигурации в Stripe с помощью пользовательской проверки? - PullRequest
0 голосов
/ 26 августа 2018

Я использую Stripe и создал настраиваемый заказ , согласно этой странице:

var handler = StripeCheckout.configure({
  key: 'xxxxxxxxxxxxxxxxxxxxxxxxxx',
  image: 'https://stripe.com/img/documentation/checkout/marketplace.png',
  locale: 'auto',
  token: function(token) {
    // You can access the token ID with `token.id`.
    // Get the token ID to your server-side code for use.
  }
});

document.getElementById('customButton').addEventListener('click', function(e) {
  // Open Checkout with further options:
  handler.open({
    name: 'some name',
    description: '2 widgets',
    currency: 'aud',
    amount: 2000
  });
  e.preventDefault();
});

// Close Checkout on page navigation:
window.addEventListener('popstate', function() {
  handler.close();
});

Однако мне интересно, есть ли способ обновить параметры конфигурации, переданные в open, так как мне нужно обновить amount, когда пользователь вносит изменения.

... или моя лучшая ставка - просто заново инициировать все или эту часть?

Хотя этот код находится на обычном JavaScript, я изменил его на jQuery с моей стороны, поэтому было бы предпочтительным решение jQuery.

1 Ответ

0 голосов
/ 26 августа 2018

Самый простой способ сделать это - определить простую сумму в переменной, а затем изменить значение этой переменной при выполнении действий на своей странице, которые изменяют цену.

// define an amount, you could always modify this later
var myAmount = 2000;

// when the submit button is clicked
document.getElementById('customButton').addEventListener('click', function(e) {
      // Open Checkout with further options:
      handler.open({
        name: 'some name',
        description: '2 widgets',
        currency: 'aud',
        amount: myAmount
      });
      e.preventDefault();
});

Один примервы можете найти интересное, http://jsfiddle.net/ns2fezag/

...