【问题标题】:Sending Multiple Data to HTML Component From Page Code从页面代码向 HTML 组件发送多个数据
【发布时间】:2018-07-31 14:15:49
【问题描述】:

我的页面代码将数据发送到用于处理贝宝付款的 HTML 组件。

在我的页面上,我需要发送 2 个值 我在我的页面代码上这样做:

let obj = {amount: amount, currency: currency};
await $w("#html1").postMessage(obj); 

在我的 HTML 组件上,我目前有这个

let AMOUNT = 0;
        window.onmessage = (event) => {
            if (event.data > 0) {
            AMOUNT = event.data;
            }
        }

这导致定义金额和货币如下:

return actions.payment.create({
                    payment: {
                        transactions: [
                            {
                                amount: { total: `${AMOUNT}`, currency: `${CURRENCY}` }
                            }
                        ]

问题在于它不起作用,我无法弄清楚如何将 AMOUNT 和 CURRENCY 的值与 event.data 分开。

我试过了,但没有用

let AMOUNT = 0;
let CURRENCY = 0;
        window.onmessage = (event) => {
            if (event.data > 0) {
            AMOUNT = event.data(amount);
            CURRENCY = event.data(currency);
            }
        }

【问题讨论】:

    标签: javascript html paypal velo


    【解决方案1】:

    当您在 HTML 组件中获得 event.data 时,您将获得您发送的整个对象。因此,要拆分该对象,只需使用点符号即可。

    window.onmessage = (event) => {
      if (event.data) {
        AMOUNT = event.data.amount;
        CURRENCY = event.data.currency;
      }
    }
    

    您也可以改用这一行来简化payment.create 调用。

    amount: { total: AMOUNT, currency: CURRENCY }
    

    【讨论】:

      猜你喜欢
      • 2018-10-03
      • 1970-01-01
      • 2021-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-11
      • 1970-01-01
      • 2018-03-31
      相关资源
      最近更新 更多