函数adopt的调用与传参
来源:6-13 DAPP实战- 实现合约交互

helloei
2018-10-10
老师好,我想请教几个问题:关于这个函数的调用 apotionInstance.adopt(petId, {from: account});
可以看到传了两个参数,但在adoption.sol中adopt的定义中只有一个参数。
1.以上函数为什么可以这样用?
2.还有这个参数{from: account}传给了谁?有什么用?
3.我们可以从函数定义中看到:adopters[petId] = msg.sender;//这句是获得购买者的信息,这个msg.sender是怎么得到的?是由问题2中的返回的参数得到的吗?
4.我们这个应用中的宠物并没有定价,是否可以在adoption合约中添加上转账购买条件就行了?
问题有点多,先谢谢老师耐心解答。
写回答
1回答
-
1. 可以参考下我翻译的文档: https://web3.learnblockchain.cn/0.2x.x/web3.eth/#contract-methods
调用的时候,可以带一个参数 transactionObject, 可以参考:https://web3.learnblockchain.cn/0.2x.x/web3.eth/#web3ethsendtransaction
2. msg.sender 是solidity 的接口, 可以获得调用者地址。
3. 可以的 , 比如可以在adopt 函数加一个 条件: msg.value == xxx , msg.value 用来获取调用时的附加金额。022019-04-27
相似问题