@0x/contracts-gen 中文文档教程

发布于 3年前 浏览 21 项目主页 更新于 3年前

Contracts Gen

这个包允许你为智能合约包生成样板 TypeScript 代码和配置。

Installation

yarn add -g @0x/contracts-gen

Usage

从您的智能合约包中运行它。

contracts-gen

每次移动合约后都应该运行此工具以重新生成样板代码和配置。

What can it generate

此工具执行以下操作:

  • Reads your compiler.json. Specifically the list of smart contracts.
  • Creates wrapper.ts file which exports all contract wrappers.
  • Creates artifacts.ts file which exports all contract artifacts.
  • Generates list of JSON artifact files in tsconfig.json
  • Generates a glob for abi-gen in package.json

最重要的是 - 如果您的 compiler.json 具有仅按名称引用的合同 - 它会将名称解析为相对路径并将其放在那里。 它还对输出中的所有列表进行排序,从而产生更小、更清晰的差异。

Contributing

我们欢迎来自更广泛社区的改进和修复! 要报告此包中的错误,请在此存储库中创建一个问题。

请在开始之前阅读我们的贡献指南

Install dependencies

如果您没有启用 yarn workspaces (Yarn < v1.0) - 启用它们:

yarn config set workspaces-experimental true

然后安装依赖

yarn install

Build

项 要构建此包和它所依赖的所有其他 monorepo 包,请从 monorepo 根目录运行以下命令:

PKG=@0x/contracts-gen yarn build

或持续重建关于改变:

PKG=@0x/contracts-gen yarn watch

Clean

yarn clean

Lint

yarn lint

Contracts Gen

This package allows you to generate boilerplate TypeScript code and configs for smart contracts packages.

Installation

yarn add -g @0x/contracts-gen

Usage

Run it from within your smart contracts packages.

contracts-gen

You should run this tool after each time you move your contracts around to regenerate boilerplate code and configs.

What can it generate

This tool does the following:

  • Reads your compiler.json. Specifically the list of smart contracts.
  • Creates wrapper.ts file which exports all contract wrappers.
  • Creates artifacts.ts file which exports all contract artifacts.
  • Generates list of JSON artifact files in tsconfig.json
  • Generates a glob for abi-gen in package.json

On top of that - if your compiler.json has contracts referenced just by name - it will resolve the name to relative path and put it there. It also sorts all the lists in it's output leading to smaller and cleaner diffs.

Contributing

We welcome improvements and fixes from the wider community! To report bugs within this package, please create an issue in this repository.

Please read our contribution guidelines before getting started.

Install dependencies

If you don't have yarn workspaces enabled (Yarn < v1.0) - enable them:

yarn config set workspaces-experimental true

Then install dependencies

yarn install

Build

To build this package and all other monorepo packages that it depends on, run the following from the monorepo root directory:

PKG=@0x/contracts-gen yarn build

Or continuously rebuild on change:

PKG=@0x/contracts-gen yarn watch

Clean

yarn clean

Lint

yarn lint
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文