首页 > 解决方案 > Tron transactionBuilder 错误无法读取未定义的属性“地址”

问题描述

当我调用 sendTRX 函数时,我收到此类错误无法读取未定义的属性“地址”

{
   const privateKey = "***"; 
var fromAddress = window.tronWeb.address.toHex("TR18f2revPbnb9dzFTqYQ5TKaBjX1QEtsC"); //address _from
var toAddress = window.tronWeb.address.toHex("TC4AKrNsrhG3h1pnY7SjjNcqQpDNhmNTuY"); //address _to
var amount = 10000000; //amount
//Creates an unsigned TRX transfer transaction
console.log(fromAddress);
//console.log(window.tronWeb.address.toHex(fromAddress));

const tradeobj = await window.tronWeb.transactionBuilder.sendTrx(
      fromAddress,
      amount,
      toAddress
);
const signedtxn = await window.tronWeb.trx.sign(
      tradeobj,
      privateKey
);
const receipt = await window.tronWeb.trx.sendRawTransaction(
      signedtxn
);
console.log('- Output:', receipt, '\n');
}
sendTRX();```

标签: javascriptjquerysoliditytrontronweb

解决方案


这是 tronlink chrome 扩展相关的。当您调用 window object 时,请确保您已登录您的 tronlink 钱包。

如果没有 tronlink,请确保使用以下功能定义用户端口:

window.onload = function() {
  if (!window.tronWeb) {
    const HttpProvider = TronWeb.providers.HttpProvider;
    const fullNode = new HttpProvider('https://api.trongrid.io');
    const solidityNode = new HttpProvider('https://api.trongrid.io');
    const eventServer = 'https://api.trongrid.io/';
    
    const tronWeb = new TronWeb(
        fullNode,
        solidityNode,
        eventServer,
    );
    window.tronWeb = tronWeb;
  }
};

推荐阅读