首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从另一个智能契约中创建智能契约的输出地址?

如何从另一个智能契约中创建智能契约的输出地址?
EN

Ethereum用户
提问于 2018-09-13 06:05:58
回答 1查看 722关注 0票数 1

我已经看到,当我创建一个新的智能合同,从另一个智能合同,里米克斯埃瑟姆返回给我智能合同的地址。但是,当我使用web3js时,回调函数只是返回给我一个transactionHash,没有更多的信息。当我试图获得eth.getTransactionReceipt("transactionHash")时,我看到contractAddress为null。

我可以通过使用事件来周旋,但我的问题是,Remix Ethereum怎么能做到这一点呢?

代码语言:javascript
复制
pragma solidity ^0.4.24;

contract Project {
    address public founder;
    constructor () public {
        founder = msg.sender;
    }
    function createRequest(string _title) public returns (address) {
        address addrRequest = new Request(_title);
        return addrRequest;
    }
}

contract Request {
    string public title;
    constructor(string _title) public {
        title = _title;
    }
}

混炼工具的结果

EN

回答 1

Ethereum用户

回答已采纳

发布于 2018-09-13 06:12:31

sendTransaction方法的返回值始终是创建的事务的散列。事务不会将契约值返回给前端,因为事务不会立即被挖掘并包含在区块链中。要从函数中获取值,您应该使用solidity。

有关可靠事件的更多信息,请参考博客。

请参阅问题,以了解为什么要编写solidity函数中的返回语句。

票数 1
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

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

复制
相关文章

相似问题

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