Solidity

truffle-contract Contract.new() 產生一個空合約(無狀態)

  • October 30, 2017

我正在製作已部署契約的新副本。我正在使用 truffle, truffle-contract 這樣做。從 JS 前端

var conf = contract(MyContract)
   conf.setProvider(this.state.web3.currentProvider)
   conf.new(this.state.party1name, this.state.party1regaddress, this.state.party2address, this.state.effdate,
           {from: web3.eth.accounts[0], gas : 3000000})
   .then((instance) => {conf = instance
       console.log(conf.address)
       console.log(conf.get())
   })

上面的程式碼為我部署了一個新合約,但似乎忽略了我提供的所有參數,並且我的新合約的狀態為空。

當我從松露控制台做同樣的事情時,它工作正常

MyContract.new("Manish", "Raffles Place", "0x61b755c693d7cf263f969f336be281a564af915d", {from: web3.eth.accounts[0]})

我在控制台中檢查了以下日誌

在此處輸入圖像描述

所以我得到了新的合約地址,但傳遞給我的建構子的值是空的。

我剛剛刪除了 build 文件夾中所有已編譯的 abi 並再次編譯並部署了所有這些,並讓我的建構子付款並猜猜是什麼……它現在工作順利

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