代码之家  ›  专栏  ›  技术社区  ›  Stefan Falk

如何确定用户是否准备就绪,以及是否可以将nonce提交到服务器?

  •  0
  • Stefan Falk  · 技术社区  · 6 年前

    这是本书中许多(我觉得还不完整)例子之一 the docs :

    var button = document.querySelector('#submit-button');
    
    braintree.dropin.create({
      authorization: 'CLIENT_AUTHORIZATION',
      container: '#dropin-container'
    }, function (createErr, instance) {
      button.addEventListener('click', function () {
        instance.requestPaymentMethod(function (requestPaymentMethodErr, payload) {
          // Submit payload.nonce to your server
        });
      });
    });
    

    这一切都很好,也很简单,但我不知道如何才能改变这种状态 button 根据“用户是否已完成添加付款方式?”的状态。

    这可能吗?看起来,点击按钮实际上是获取 nonce (这是 payload.nonce ).但是,如何禁用 按钮 直到用户完成与Braintree/PayPal的对话?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Stefan Falk    6 年前

    答案是 look in the docs ( 不,不是那些医生 ) - those docs .

    我还是不知道 怎样 我找到了那个链接。

    dropin实例有一个 on() 函数,您可以在其中为某些事件注册回调(只需注册即可,请查看已经存在的文档):

    instance.on('paymentMethodRequestable', function(event) {
      thiz._logger.info('Payment method is now requestable');
      setTimeout(() => thiz.paymentMethodAvailable = true, 400);
    });