【HardHat + VSCode + Solidity】

该文章根据B站Solidity视频教程编写,以此来记录学习笔记

下载Visual Studio Code

安装NodeJs

  • 官网下载
  • 建议下载 LTS 版本,LTS表示长期支持(Long Term Support)
  • 安装好后打开VSCode工具在终端运行如下命令是否正常
node --version

VSCode中安装插件

  • Solidity(黄色帽子那个插件)
  • prettier + prettier-plugin-solidity (代码格式化) 官网

项目安装 prettier + prettier-plugin-solidity

  • 执行命令
npm install --save-dev prettier prettier-plugin-solidity
  • 设置代码格式,比如JS每行的;分号不写;'单引号变双引号;等
  • 在项目根目录新建.prettierrc (需要格式化设置) 和 .prettierignore (不需要格式化设置的文件)
  • .prettierrc
{
  "tabWidth": 4,
  "useTabs": false,
  "semi": false,
  "singleQuote": false
}
  • .prettierignore
node_modules
package.json
img
artifacts
cache
coverage
.env
.*
README.md
coverage.json

设置VSCode保存自动格式化

  • Ctrl + Shift + P打开命令面板,输入settings
  • 选择Open Workspace Settings (JSON),在settings.json文件中配置
  • 格式化Solidity代码配置
"[solidity]": {
    "editor.defaultFormatter": "NomicFoundation.hardhat-solidity"
  }
  • 格式化JS代码配置
{
"[javascript]": {
        "editor.defaultFormatter": "esbenp.prettier-vscode"
    }
}
  • 配置好后,再打开命令行面板,选择Open User Settings
  • 搜索Format On Save
  • 打开设置,Format On Save打钩即可

切换用yarn

  • 禁用corepack ,新版本的Nodejs中默认会安装该插件
corepack enable
  • 如果无法禁用corepack 插件,则表示当前没有安装该插件,直接安装yarn插件即可
  • 安装yarn
npm install -g yarn
  • 查看yarn版本
yarn --version

安装Solidity编译工具Solc-js

官网

npm install -g solc

或者

yarn add solc

目录说明

  • package.json: 项目包依赖关系
  • yarn.lock: 项目使用包确切版本

添加Solidity编译版本

  • 格式 : yarn add solc@solidity版本-fixed
  • 查看Solc能编译的版本有哪些?参考
yarn add solc@0.8.7-fixed
  • 查看Solc命令列表
yarn solcjs --help
  • 查看当前Solc编译版本
yarn solcjs --version

Solc编译Solidity指定文件

yarn solcjs --bin --abi --include-path node_modules/ --base-path . -o . XXX.sol
  • “–bin” : 二进制文件
  • “–abi” : abi文件
  • “–include-path node_modules/”: 包含所有合约或文件
  • “–base-path”: 起始路径
  • “-o” : bin文件和abi文件输出路径

Ganache

官网

Ethers.js

官网V5版
官网V6版
中文V5版

yarn add ethers@5.7

安装dotenv

yarn add dotenv

创建 HardHat 项目

官方文档

  • 创建新项目,并cd到该目录下
  • 执行yarn init,会有提示输入信息,一路回车即可
  • 再执行yarn add --dev hardhatnpm install --dev hardhat
  • yarn hardhatnpx hardhat
  • 选择Create a JavaScript project,后面也是一路回写即可
  • 注意:后续需要自己手动去安装依赖包,或一次性执行如下命令来安装,因为后面需要用hardhat命令,否则导致有些hardhat命令无法使用
yarn add --dev "hardhat@^2.14.0" "@nomicfoundation/hardhat-network-helpers@^1.0.0" "@nomicfoundation/hardhat-verify@^1.0.0" "chai@^4.2.0" "hardhat-gas-reporter@^1.0.8" "solidity-coverage@^0.8.0" "@nomicfoundation/hardhat-toolbox@^3.0.0" "@nomicfoundation/hardhat-chai-matchers@^2.0.0" "@nomicfoundation/hardhat-ethers@^3.0.0" "ethers@^6.4.0" "@typechain/hardhat@^8.0.0" "typechain@^8.1.0" "@typechain/ethers-v6@^0.4.0"

部署到BSC Testnet

  • deploy.js
const { ethers } = require("hardhat")

async function main() {
  const simpleStorageFactory = await ethers.getContractFactory("SimpleStorage")
  console.log("Deploying contract...")
  const simpleStorage = await simpleStorageFactory.deploy()
  await simpleStorage.waitForDeployment()
  console.log(`Deployed contract address: ${ simpleStorage .target }`)
}

main().then(() => {
  process.exit(0)
}).catch((error) => {
console.log(error)
process.exit(1)
})
  • hardhat.config.js文件中配置
module.exports = {
  defaultNetwork: "hardhat",
  networks: {
    bsctest: {
      url: BSCTEST_RPC_URL,  // BSC Testnet RPC URL
      accounts: [PRIVATE_KEY], // 私钥
      gasPrice: 1500000000, // gasPrice,注:第一次部署的时候没有写,会报错:ProviderError: transaction underpriced
      chainId: 97 // BSC Testnet chainId
    }
  },
  solidity: "0.8.19",
};
  • 执行命令
yarn hardhat run .\scripts\deploy.js --network bsctest
Deploying contract...
Deployed contract address: 0x61432B23cf8C6507288E755756e7EacF4AD127a7
Done in 17.63s.
  • 注意:因为刚部署的合约没有验证,因此无法查看具体的Solidity代码
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
VSCode是一个流行的开源文本编辑器,它支持多种编程语言,包括SoliditySolidity是一种用于编写智能合约的编程语言,通常与以太坊区块链平台一起使用。要在VSCode中编写Solidity智能合约,可以按照以下步骤操作: 1. 安装VSCode:前往VSCode官方网站(https://code.visualstudio.com/)并下载适用于您的操作系统的安装程序。然后按照安装向导完成安装过程。 2. 安装Solidity插件:在VSCode中,点击左侧的扩展图标(或使用快捷键`Ctrl+Shift+X`)打开扩展面板。在搜索框中输入"solidity",然后找到"Solidity"插件并点击安装。 3. 创建Solidity文件:在VSCode中,打开一个文件夹或项目,并在资源管理器中右键单击要创建Solidity文件的目录。选择"New File"(新建文件)并将文件命名为`*.sol`格式,例如`MyContract.sol`。 4. 编写Solidity代码:使用VSCode编辑器界面,在新创建的Solidity文件中编写您的智能合约代码。您可以使用Solidity语言的语法和功能来定义状态变量、函数等。 5. 保存文件:在您完成编写代码后,保存文件以将更改应用于文件系统。 6. 编译和调试:Solidity插件为您提供了编译、调试和代码分析的功能。您可以使用插件的命令面板或右键单击Solidity文件以执行这些操作。 请注意,这只是一个简单的介绍,如果您是初学者,可能需要更详细的指南来学习Solidity编程。您可以参考Solidity官方文档以及其他教程和资源来深入学习Solidity开发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值