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) 我正在尝试运行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)
当我运行时 …