前端与合约的交互
✨web3.js的使用
1⃣️导入和初始化

2⃣️实例合约

ABI在编译后能看到
合约地址部署后能看到
3⃣️调用合约函数

✨truffle文档
https://trufflesuite.com/tutorial/#creating-a-truffle-project-using-a-truffle-box
npm install -g truffle
mkdir MetaCoin
cd MetaCoin
truffle unbox metacoin
truffle compile //编译后的文件将放在build/contracts/ 目录中
truffle支持从单独的文件或外部包引入合约依赖文件
truffle develop //创建区块链并与之交互//这里也可以选择用ganache客户端,修改truffle-config.js
contracts/: Solidity合约目录
migrations/: 部署脚本文件目录
test/: 测试脚本目录,参考 如何测试应用?
truffle.js: Truffle 配置文件
contracts/Migrations.sol: 这是一个单独的 Solidity 文件,用来管理和升级智能合约. 每一个工程都有这样的一个文件,并且通常不需要编辑它。
连接ganache的默认配置
module.exports = {
networks: {
development: {
host: "127.0.0.1",
port: 7545,
network_id: "*"
}
}
};
truffle migrate //在区块链上部署合约(运行迁移脚本,将合约部署到以太坊网络)
一个部署脚本
var MyContract = artifacts.require("XlbContract");
//artifacts.require()用于表示我们想与那些合约进行交互。这将返回一个合约抽象,可以在后面使用
module.exports = function(deployer) {
//module.exports:所有的部署都要通过module.exports语法来到处函数,每次迁移导出的函数都应该接受deployer对象作为其第一个参数。deployer对象适用于暂存部署任务的主要接口。
// 部署步骤
deployer.deploy(MyContract);
//deployer的abi:deployer.deploy/deployer.link/deployer.then
};
truffle console //进入控制台
✨hardhat
https://learnblockchain.cn/article/1356
在文件夹内:
点击查看代码
mkdir hardhat-tutorial
cd hardhat-tutorial
npm init --yes
npm install --save-dev hardhat
npx hardhat
scripts/ 脚本在这
test/ 测试
hardhat.config.js
浙公网安备 33010602011771号