Bignumber

發送令牌出現錯誤

  • September 1, 2016

嗨,我在乙太坊中部署了一個代幣合約並設法與之互動。堅固性程式碼:

合約代幣{
映射(地址 => uint)公共餘額;
event TokenSent(地址發送者,地址接收者,uint數量);
功能令牌(uint供應){
如果(供應== 0)供應= 10000;
餘額[msg.sender] = 供應;
}
函式發送(地址接收者,單位數量)返回(布爾確定){
如果(餘額 [msg.sender] < 金額)返回 false;
餘額[msg.sender] -= 金額;
餘額[接收者] += 金額;
TokenSent(msg.sender, receiver, amount);
返回真;
}
}

現在我試圖將令牌發送到一個帳戶,但我不斷收到以下錯誤:

new BigNumber() 不是數字:[object Object]10[object Object]
加薪時 (web3.js:14426:29)
在 web3.js:14414:33
在 BigNumber (web3.js:13442:67)
在 BigNumber (web3.js:13452:29)
在 web3.js:2241:16
在 web3.js:2252:21
在 web3.js:950:32
在 web3.js:1598:12
在 web3.js:707:16
在 web3.js:706:20
在 web3.js:3991:46

我正在發送以下內容:

myContractInstance.send([{"receiver": "ed7a39b8cd4c217f99af29b5e5d7cbfd3c53030d"},{"amount": "100"}]),

如果有人能指出我正確的方向,那就太棒了!

你應該這樣稱呼:

myContractInstance.send(
"0xed7a39b8cd4c217f99af29b5e5d7cbfd3c53030d", // 更好的前綴為 0x
100, // 一個數字就可以了
{ 來自:tokenOwner }); // 如有必要,其餘的交易元素。

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