[英]How to send ether to erc721 token owner?
I want to send ether to token owner. 我想将以太币发送给代币所有者。
ownerOf
returns address, so I set payable address inside of sendEther
function. ownerOf
返回地址,因此我在sendEther
函数中设置了应付地址。
However, error says 'Type address is not implicitly convertible to expected type address payable'. 但是,错误显示“类型地址不能隐式转换为预期的应付类型地址”。
Is there any way to set payable address inside function? 有什么方法可以在功能内部设置应付款地址? Could you give me any advise?
你能给我什么建议吗?
function sendEther(uint256 _tokenId) public payable {
address payable _tokenOwner = ownerOf(_tokenId);
_tokenOwner.transfer(msg.value);
}
ERC721.sol
function ownerOf(uint256 tokenId) public view returns (address) {
address owner = _tokenOwner[tokenId];
return owner;
}
您不能直接从address
为address payable
,但是可以通过uint160
分两步进行uint160
:
address payable _tokenOwner = address(uint160(ownerOf(_tokenId)));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.