首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从薄荷ERC1155返回数据值?

如何从薄荷ERC1155返回数据值?
EN

Ethereum用户
提问于 2022-05-05 21:26:54
回答 1查看 219关注 0票数 1

我已经用一些数据创建了一个ERC1155,但是如何返回数据呢?

这是我的薄荷功能:

代码语言:javascript
复制
function mint(string memory data) public returns(uint256)
    {
        _tokenIds.increment();
        uint256 newItemId = _tokenIds.current();
        bytes memory bytesData = bytes(data);

        _mint(msg.sender, newItemId, 1, bytesData);  

        setApprovalForAll(contractAddress, true); 
        return newItemId;
    }
EN

回答 1

Ethereum用户

发布于 2022-05-05 23:50:52

数据不被存储,只传递给这些钩子:

代码语言:javascript
复制
    _beforeTokenTransfer(operator, address(0), to, ids, amounts, data);
    _afterTokenTransfer(operator, address(0), to, ids, amounts, data);

您可以在OpenZeppelin同1155合同的github代码中看到这一点。

通过在合同中实现这些挂钩,您可以自由地处理所需的数据。

例如:

  • 将数据存储在状态
  • 检查数据
  • 发出事件
  • ..。
票数 1
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/127646

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档