我是否需要在选择更改时重新渲染PayPal的智能按钮?

问题描述 投票:0回答:1

我的页面上有一个选择元素。该选择元素选择产品的不同变体。所有这些产品的价格相同,但是我想在发票上注明选择了哪种产品。我正在使用PayPal智能按钮在页面上集成结帐功能。假设我有以下内容:

<select id="product-select">
    <option value="product-A" selected> Product A </option>
    <option value="product-B"> Product B </option>
    <option value="product-C"> Product C </option>
</select>

<div id="paypal-button-container"> </div>

<script>
  paypal.Buttons({
    createOrder: function(data, actions) {
      return actions.order.create({
        purchase_units: [{
          amount: {
            value: '50'
          },
          items: [{
            unit_amount: {
                value: '50'
            },
            quantity: '1',
            name: 'Product A',
          }],
        }],
      });
    }
  }).render('#paypal-button-container');
</script>

[当用户将所选选项更改为产品B或产品C时,是否需要在选择更改时重新呈现PayPal按钮?如果是这样,我该如何处置旧的?

paypal paypal-rest-sdk
1个回答
0
投票

您确实需要重新渲染。

而不是立即调用.render(),而是保存对对象的引用。

var myButton = paypal.Buttons({...});
myButton.render('#paypal-button-container');

//things happen, user makes changes to purchase_units array
myBytton.close();

//render the button with new info
© www.soinside.com 2019 - 2024. All rights reserved.