Javascript 从页面代码向HTML组件发送多个数据

Javascript 从页面代码向HTML组件发送多个数据,javascript,html,paypal,velo,Javascript,Html,Paypal,Velo,我有我的网页代码发送数据到一个HTML组件,用于处理贝宝付款 在我的页面上,我需要发送两个值 我在我的页面上执行此操作代码: let obj = {amount: amount, currency: currency}; await $w("#html1").postMessage(obj); 在我的HTML组件上,我现在有这个 let AMOUNT = 0; window.onmessage = (event) => { if (event.d

我有我的网页代码发送数据到一个HTML组件,用于处理贝宝付款

在我的页面上,我需要发送两个值 我在我的页面上执行此操作代码:

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}` }
                            }
                        ]
问题是它不起作用,我无法找出如何将金额和货币的值与event.data分开

我试过了,但没用

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

当您在HTML组件中获得
event.data
时,您将获得发送的整个对象。所以,要分解这个对象,只需使用点符号

window.onmessage = (event) => {
  if (event.data) {
    AMOUNT = event.data.amount;
    CURRENCY = event.data.currency;
  }
}
您可能还可以简化
支付。使用此行创建
呼叫

amount: { total: AMOUNT, currency: CURRENCY }