Solidity
使用 Meteor 和 TemplateVar 在 Javascript 中部署新合約時出錯
我正在嘗試使用 Meteor 和 TemplateVar 在點擊按鈕時創建一個新契約。相關程式碼為:
Template.Borrower.events({ 'click button'(event, instance) { // Create new Borrower var _borrower = "ABC" alert("I am working on it...") web3.eth.accounts.wallet.add("0x..."); var newBorrower = web3.eth.contract(borrowerABIArray).new(_borrower,{from:eth.accounts[0],data:borrowerData,gas:500000}, function(err, newContract){ if(!err) { if(!newContract.address) { alert("Contract transaction sent: TransactionHash: " + newContract.transactionHash + " waiting to be mined..."); } else { alert("Contract mined! Address: " + newContract.address); } } });
我什至沒有收到錯誤,它只顯示第一條消息“我正在處理它……”然後什麼也沒有。我已登錄 Metamask,所以我的錢包已解鎖,但我也嘗試解鎖它,但也沒有用。
當我直接使用 Remix 部署合約時,它需要不到 300000 的氣體,所以它不會是氣體問題。
謝謝你的幫助。
所以我想通了。我首先需要將 newBorrower 定義為合約的新實例:
newBorrower = new web3.eth.contract(borrowerABIArray)
然後程式碼工作並探勘一個新的借款人。