练习 - 设置一个新项目并集成 OpenZeppelin

已完成

让我们使用 Truffle 创建一个新项目,然后并入 OpenZeppelin 合同库。 在继续之前,请确保已安装 TruffleGanache CLI

创建新项目

  1. 在计算机上打开终端或命令行应用程序。 在终端中,新建一个名为 Token20 的文件夹。 为此,请运行 mkdir Token20 命令。 我通常在一个名为“项目”的文件夹中运行此命令,我在这里存储我的其他所有开发项目。
  2. 转到 Token20 文件夹(运行 cd Token20 )。
  3. 若要初始化新项目,请运行 truffle init
  4. 等待项目初始化,然后在 Visual Studio Code 中打开该项目。

使用 Truffle 初始化项目后,你应会看到以下输出:

$ mkdir Token20
$ cd Token20/
$ truffle init
✔ Preparing to download box
✔ Downloading
✔ cleaning up temporary files
✔ Setting up box
$ ls
contracts               migrations              test                    truffle-config.js

设置项目

已创建项目并在编辑器中打开后,请查看项目文件夹的内容。

接下来,你需要确认已安装 Node.js。 打开终端并运行 node 命令。 如果已安装 Node.js,该命令将返回你的计算机上已安装的版本。 如果你的计算机上未安装 Node.js.,请转到 Node,了解如何为你的平台下载它。

Node.js 随附节点包管理器 (npm) 一起安装。 Npm 可帮助你管理其他 JavaScript 构建的包和应用程序。

  1. 在终端中,运行 npm init。 该命令将显示一个实用工具,后者将引导你完成创建 package.json 文件的过程,该文件会描述项目并存储项目中使用的依赖项。
  2. 完成实用工具中的步骤,轻松创建 package.json 文件。

    备注

    可在每次出现提示时,按 Enter 使用默认值。

设置 OpenZeppelin

Screenshot of the OpenZeppelin Contracts web page.

接下来,我们希望与 OpenZeppelin 合同库集成。

为此,请在终端中运行 npm install @openzeppelin/contracts

等待包成功安装到项目中。 你应会在终端中看到类似以下内容的输出:

+ @openzeppelin/contracts@4.5.0
added 2 packages from 1 contributor and audited 1 package in 1s
found 0 vulnerabilities

请注意,发生了几件事:

  1. 包作为依赖项被添加到了 package.json 文件。
  2. 一个 node_modules 文件夹从 OpenZeppelin 导入了所有可用的合同,这些合同位于子文件夹 @openzeppelin/contracts 中。

检查该文件夹的内容后将返回以下输出:

$  ls node_modules/@openzeppelin/contracts
README.md  build/    governance/  metatx/       proxy/     token/
access/    finance/  interfaces/  package.json  security/  utils/

花些时间查看现可用于你的项目的可用合同源文件。 请特别注意代币合同。 更好地了解每个合同的实现以及通常提供的具体函数。