重新混合solidity合约如何将多个参数传递到创建按钮

Posted

技术标签:

【中文标题】重新混合solidity合约如何将多个参数传递到创建按钮【英文标题】:remix solidity contract how to pass multiple arguments into the create button 【发布时间】:2018-03-02 21:54:16 【问题描述】:

我的示例代码如下所示:

function HubiiCrowdsale(address _teamMultisig, uint _start, uint _end) Crowdsale(_teamMultisig, _start, _end, hubii_minimum_funding) public 
      PricingStrategy p_strategy = new FlatPricing(token_in_wei);
      CeilingStrategy c_strategy = new FixedCeiling(chunked_multiple, limit_per_address);
      FinalizeAgent f_agent = new BonusFinalizeAgent(this, bonus_base_points, _teamMultisig); 
      setPricingStrategy(p_strategy);
      setCeilingStrategy(c_strategy);
      // Testing values
      token = new CrowdsaleToken(token_name, token_symbol, token_initial_supply, token_decimals, _teamMultisig, token_mintable);
      token.setMintAgent(address(this), true);
      token.setMintAgent(address(f_agent), true);
      token.setReleaseAgent(address(f_agent));
      setFinalizeAgent(f_agent);
  

只需要我将(address _teamMultisig, uint _start, uint _end)三个参数传入create按钮即可创建合约,我试过了

"0xca35b7d915458ef540ade6068dfe2f44e8fa733c" 1234 1235

给出错误:

creation of browser/ballot.sol:HubiiCrowdsale errored: Error encoding arguments: SyntaxError: Unexpected number in JSON at position 46

和:

"_teamMultisig":"0xca35b7d915458ef540ade6068dfe2f44e8fa733c","_start":1234,"_end":1235

报错

creation of browser/ballot.sol:HubiiCrowdsale errored: Error encoding arguments: Error: Argument is not a number

在这里传递参数的正确方法是什么?

【问题讨论】:

你尝试过 ("0xca35b7d915458ef540ade6068dfe2f44e8fa733c", 1234, 1235) - 不带括号 - 吗? 我试过了,它说'创建浏览器/ballot.sol:HubiiCrowdsale 错误:发送交易失败:地址无效。如果您使用注入的提供程序,请检查它是否已正确解锁。 ' 【参考方案1】:

试试:

"0xca35b7d915458ef540ade6068dfe2f44e8fa733c", 1234, 1235

逗号分隔

编辑:我刚刚看到上面的评论,还有一个名为“Crowdsale”的修饰符约束,您能否也提供此代码,因为这可能会导致更多错误。

【讨论】:

以上是关于重新混合solidity合约如何将多个参数传递到创建按钮的主要内容,如果未能解决你的问题,请参考以下文章

将字符串作为参数传递时出错(Solidity)

如何将一组结构从 web3js 发送到 Solidity 合约?

Web3 + Solidity:将参数传递给合约的构造函数

Solidity:如何在 compile.js 文件中编译多个智能合约?

solidity中bytes32传参调用合约

区块链实战如何创建一个带参数的智能合约