solidity - 在工厂合同中创建合同不起作用
问题描述
我想在我的工厂合同中创建一个合同,但由于某种原因没有任何反应:
//SPDX-License-Identifier: Unlicense
pragma solidity ^0.8.0;
import './Exchange.sol';
import 'hardhat/console.sol';
interface IFactory {
function getPair(address tokenA, address tokenB) external view returns (address pair);
function createPair(address tokenA, address tokenB) external returns (address pair);
}
contract Factory is IFactory{
mapping(address => mapping(address => address)) public override getPair;
constructor() {}
function createPair(address _tokenA, address _tokenB) public override returns (address pair) {
pair = address(new Exchange{salt: keccak256(abi.encode(_tokenA, _tokenB))}());
}
}
因此,我无法测试 Exchange 合约,因为它丢失了。
我正在npx hardhat node
使用 localhost 启动节点并在其上运行。
解决方案
推荐阅读
- javascript - ` 中的重音符号
.vue.html` 显示为 � - git - 以前的 git revert 正在删除新合并中的文件
- java - 在springboot应用的application.properties中配置map
- java - 拆分字符串后出现 NumberFormatException
- vba - 如何在工作表之间复制在vba中,我试图录制宏但它不起作用
- javascript - 输入点击区域大于输入,导致按钮不起作用
- javascript - 使用 Formik 构建向导时不能在子组件中使用道具
- sonarqube - Sonarqube 的分支视图中未显示“更多”菜单
- php - 从数组中获取值有一个多行
- javascript - 构建完成后运行汇总插件