Solidity学习-开发Smart Contract入门
官网学习内容
以下记录在学习的过程遇到的一些不了解的内容:
1. npx 官网解释
2. 什么是dotnev软件包?学习1 学习2
3. 什么是ethers.js?
ethers.js库旨在为以太坊区块链及其生态系统提供一个小而完整的 JavaScript API 库 它最初是与 ethers.io 一起使用,现在已经扩展为更通用的库。
通过npm安装:npm install --save-dev @nomiclabs/hardhat-ethers "ethers@^5.0.0"
教程
4. 使用hardhat编译合约时出现错误:
We recommend running Hardhat using the current LTS Node.js version. You can learn about it here
解决方法:
到hardhat官网上看到:We recommend running Hardhat using the current LTS Node.js version.
所以我选择node-v16.15.0重新安装node.
5. 如果contracts这个目录名不对,会出现错误:Nothing to compile
6. 修改使用rinkeby测试网进行部署合约
hardhat.config.js 如下:
require('dotenv').config(); require("@nomiclabs/hardhat-ethers"); const { API_URL, PRIVATE_KEY } = process.env; /** * @type import('hardhat/config').HardhatUserConfig */ module.exports = { solidity: "0.7.3", defaultNetwork:"rinkeby", networks:{ hardhat:{}, rinkeby:{ url: API_URL, accounts: [`0x${PRIVATE_KEY}`] }, } };
运行:
npx hardhat run scripts/deploy.js --network rinkeby
部署成功:
Contract deployed to address: 0x462d05caa55979148B85B9f9244399c052548EA7