DAPP智能合约DeFI质押挖矿系统开发技术讲解(成熟源码)

简介: DAPP智能合约DeFI质押挖矿系统开发技术讲解(成熟源码)

在工程项目 scripts 中,我们可以找到一个名为 deploy.js,这个文件就是我们部署合约使用的脚本文件

const hre = require("hardhat");

async function main() {
const currentTimestampInSeconds = Math.round(Date.now() / 1000);
const ONE_YEAR_IN_SECS = 365 24 60 * 60;
const unlockTime = currentTimestampInSeconds + ONE_YEAR_IN_SECS;

const lockedAmount = hre.ethers.utils.parseEther("1");

const Lock = await hre.ethers.getContractFactory("Lock");
const lock = await Lock.deploy(unlockTime, { value: lockedAmount });

await lock.deployed();

console.log(

`Lock with 1 ETH and unlock timestamp ${unlockTime} deployed to ${lock.address}`

);
}

// We recommend this pattern to be able to use async/await everywhere
// and properly handle errors.
main().catch((error) => {
console.error(error);
process.exitCode = 1;
});
复制
我们打开文件可以看到文件的代码很简单,其中

const hre = require("hardhat");
复制
定义了一个 hardhat 运行时环境,按照官方介绍, 允许在 hre 可访问的地方使用任何功能,在下面的实际部署代码中,我们也可以看到,ehters 对象也是从 hre 中获取的

const currentTimestampInSeconds = Math.round(Date.now() / 1000);
const ONE_YEAR_IN_SECS = 365 24 60 * 60;
const unlockTime = currentTimestampInSeconds + ONE_YEAR_IN_SECS;
const lockedAmount = hre.ethers.utils.parseEther("1");
复制
这部分代码,主要是在处理合约部署时需要的初始化变量,并不是我们部署合约必须的环节

const Lock = await hre.ethers.getContractFactory("Lock");
const lock = await Lock.deploy(unlockTime, { value: lockedAmount });

await lock.deployed();
复制
在我们第二节课程里讲述了上面的代码,大家如果没有印象了可以翻阅一下上一节课,这部分代码主要就是声明合约对象,然后调用 deploy 方法进行合约部署

console.log(

`Lock with 1 ETH and unlock timestamp ${unlockTime} deployed to ${lock.address}`

);
复制
打印日志

main().catch((error) => {
console.error(error);
process.exitCode = 1;
});
复制
最后是调用部署合约方法

在真正部署合约的时候,还需要介绍一下区块链网络配置,下面我们来看看 hardhat 里面是如何进行区块链网络配置的

二、区块链网络配置
1、hardhat 配置文件

项目根目录里可以看到一个名为 hardhat.config.js 的配置文件,这个配置文件主要用来配置 solidity 编译配置以及 hardhat 需要使用的一些配置信息

solidity: "0.8.17",
复制
上面代码配置了 solidity 编译版本,我们可以根据需要自行修改,请注意.sol 文件里使用的 solidity 版本声明也需要同步修改

相关文章
|
9月前
|
区块链 安全 开发者
DAPP开发|IPPSwap去中心化智能合约系统开发
区块链的网络是一个由众多节点组成的分布式系统,每个节点都具有高度自治的特征
|
6月前
|
安全 区块链 数据安全/隐私保护
DeFi流行性挖矿系统开发 | 质押模式挖矿软件平台源码案例
DeFi流行性挖矿系统开发 | 质押模式挖矿软件平台源码案例
|
7月前
|
存储 供应链 物联网
DAPP智能合约系统技术开发一站式服务/DAPP/Defi质押/NFT
DAPP智能合约是基于区块链技术构建的去中心化应用程序。它通过智能合约的方式实现了去中心化的数据存储和业务逻 辑执行。与传统的中心化应用程序不同,DAPP智能合约没有中心化的控制机构,而是依赖于网络中的节点共识来保证数 据的安全性和一致性。
|
7月前
|
存储 安全 区块链
TRONEX波场DAPP智能合约交易系统开发
TRONEX波场DAPP智能合约交易系统开发
|
9月前
|
存储 安全 JavaScript
DAPP系统开发|NFT智能合约链游系统开发(成熟技术)
智能合约在达成协议时可消除对中间方的依赖
|
11月前
DAPP去中心化交易所系统开发详细功能丨DAPP去中心化钱包系统开发规则详细/成熟技术/源码说明
 A smart contract is a computer program that runs on a blockchain. Programs include functions and data (also known as variables or parameters), which operate on data. The data used by the function needs to be stored in the computer's memory
|
存储 前端开发 JavaScript
dapp/defi智能合约流动性LP质押挖矿系统开发(开发源码案例)丨成熟技术
Dapp:代表去中心化应用程序。它们是在去中心化网络或区块链上运行后端代码(主要用Solidity编写的智能合约)的应用程序。可以使用React、Vue或Angular等前端框架构建Dapp。
|
机器人 PyTorch 区块链
dapp/defi智能合约LP质押系统开发(开发说明)丨成熟技术及源码
 .The trading robot will automatically and continuously issue limit orders to profit from the price difference;
|
存储 区块链
DAPP/LP/DEFI智能合约流动性质押挖矿系统开发(详细及方案)丨源码案例
智能合约事实上是由计算机代码构成的一段程序,其缔结过程是:第一步,参与缔约的双方或多方用户商定后将共同合意制定成一份智能合约;
|
区块链
区块链DEFI质押项目系统开发丨土狗币智能合约开发方案
This article is compiled and released by WeChaT: kaifa873, which is only for reference of project development requirements! telegram @ sleu88
142 0