Solidity

eth.contract 給出未定義的錯誤

  • December 26, 2021

我有一個帶有幾個節點的私有乙太坊系統。我正在嘗試在其中一個上部署契約。首先,我試圖從網上部署一個範例契約。這就是我正在使用的:

pragma solidity ^0.4.24;
contract sample {
string public name = "ZeonLab";
function set(string _name) {
   name = _name;
}

function get() constant returns (string) {
  return name;
}
}

我使用 solc 編譯器對其進行編譯,並分別通過執行 solc –abi 和 solc –bin 來獲取 ABI 和字節碼。然後我嘗試在 geth 上部署合約,如下所示: geth console

> var test = eth.contract('abi text above')

但是,它給了我一個未定義的錯誤。實際上,如果我只是這樣做,而不是上面的 ABI 文本:var test = eth.contract('test'),我仍然會看到一個錯誤。

我在某個地方讀到了我們需要做的事情:var testTxt = JSON.parse('abi text above') 但是,這也不起作用。

從錯誤來看,辨識 eth.contract 本身可能存在問題。當我在控制台上輸入 eth 時,我看到合約是選項之一。

關於可能出錯的任何建議。

thx - 阿南德

謝謝!我會嘗試松露。

同時,我也發現這個(所謂的)錯誤無關緊要。事實上,當我輸入: var test = eth.contract(‘abi text above’) 然後我輸入 test 時,我看到了想要的結果。

以下程式碼應該可以解決您的問題。

var contract_name = new web3.eth.Contract('YOUR ABI', 'YOUR CONTRACT ADDRESS')

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