Web3js

將 ABI 值儲存在 var 中

  • August 14, 2018

我終於設法讓我的 web3.js 工作了。我這樣做只是為了在我的網站上顯示一個特定的值。我對 jquery 不太擅長,希望你們能幫助我。

這是 ABI 值的直接連結

https://api.etherscan.io/api?module=proxy&action=eth_call&to=0xD2354AcF1a2f06D69D8BC2e2048AaBD404445DF6&data=0xd679677a&tag=latest

合約連結(https://etherscan.io/address/0xd2354acf1a2f06d69d8bc2e2048aabd404445df6#readContract

行 ( 28. currentTier )

它是十六進制的。我需要以十進制輸出。我想我需要將值儲存在 Var 中並將其輸出為 html .. 但有點失去瞭如何準確地做到這一點。

希望你能幫助我。非常感謝你

您可以呼叫該currentTier函式。您的回調將被呼叫,並帶有一個錯誤(如果有)和一個結果,即一個BigNumber實例。呼叫.toString()它將值轉換為 base-10 字元串。下面的程式碼假定 web3.js 為 0.2xx 如果您使用的是 1.0 測試版,則語法略有不同:

var contract = web3.eth.contract([{"constant":true,"inputs":[],"name":"currentTier","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"}]).at('0xd2354acf1a2f06d69d8bc2e2048aabd404445df6');
contract.currentTier(function (err, result) { console.log(result.toString()); });
// output: 351

你提到了 jQuery。要在 HTML 中顯示值,您可以執行類似的操作$('#myelement').text(result.toString())

引用自:https://ethereum.stackexchange.com/questions/56543