小编Kar*_*iga的帖子

How to Call contract inside another contarct in solidity version 0.5.2?

I'm using solidity version 0.5.2

pragma solidity ^0.5.2;

contract CampaignFactory{
address[] public deployedCampaigns;

function createCampaign(uint minimum) public{
    address newCampaign  = new Campaign(minimum,msg.sender);  //Error 
//here!!!
    deployedCampaigns.push(newCampaign);
} 

function getDeployedCampaigns() public view returns(address[] memory){
    return deployedCampaigns;
}
}
Run Code Online (Sandbox Code Playgroud)

I'm getting the error while assigning calling the Campaign contract inside CampaignFactory contract

TypeError: Type contract Campaign is not implicitly convertible to expected 
type address.        
address newCampaign  = new Campaign(minimum,msg.sender);
Run Code Online (Sandbox Code Playgroud)

I have another contract called Campaign which i want to access inside CampaignFactory.

contract …
Run Code Online (Sandbox Code Playgroud)

blockchain ethereum solidity smartcontracts remix

4
推荐指数
1
解决办法
1954
查看次数

core.addProviders不是函数

我正在尝试运行deploy.js具有以下代码的文件:

const HDWalletProvider = require("truffle-hdwallet-provider");
const Web3 = require("web3");
const compiledFactory = require('./build/CampaignFactory.json');
//const web3 = new Web3(provider);

const provider = new HDWalletProvider(
  "[12 word mnemonic]",
  "[rinkeby api from infura]"
);

const web3 = new Web3(provider);

const deploy = async () => {
  const accounts = await web3.eth.getAccounts();

  console.log("Attempting to deply from account", accounts[0]);
  const result = await new web3.eth.Contract(JSON.parse(compiledFactory.interface))
    .deploy({ data: compiledFactory.bytecode })
    .send({ gas: '1000000', from: accounts[0] });

  //console.log(interface);
  console.log("Contract deployed to", result.options.address);
};
deploy();
Run Code Online (Sandbox Code Playgroud)

当我运行时 …

blockchain ethereum solidity truffle web3-donotuse

4
推荐指数
1
解决办法
1547
查看次数