Moonbeam 入门开发|第三课:Truffle 和连接 MetaMask
Moonbeam社区
编辑于 2021年10月08日 10:51

Moonbeam 是 Polkadot 网络上的以太坊兼容智能合约平台,为原生互操作应用程序的开发提供便利。通过其以太坊兼容性,开发者能够以最低程度的代码调整在 Moonbeam 上部署现有的 Solidity 智能合约和 Dapp 前端。

作为在 Polkadot 网络上的平行链,Moonbeam 也将受益于 Polkadot 中继链的共享安全性以及与其它 Polkadot 相关链的连接性。

为了使更多对 Moonbeam 技术充满热情和好奇的开发者能够参与进来,OneBlock+与 Moonbeam 共同推出了 **《Moonbeam 入门 - 轻松开始跨链 Solidity 开发》课程,**已于 8 月 26 日正式开课。上次我们介绍什么是 Moonbeam 平台跟它的一些特性,这节课就让我们来动手学习 Moonbeam 入门开发。以下是第三课文字版内容回顾。

本节课课程内容: 1. 介绍和安装 Truffle 2. 通过 Truffle Box 安装 Moonbeam 节点 3. 使用 MetaMask 连接 Moonbeam 本地节点和 Moonbase Alpha 4. 简单账户操作和测试

什么是 Truffle

  • EVM 开发环境,测试框架和部署工具

  • 可快速开发和自动化测试 Solidity 智能合约

  • Truffle Suite 包括:Truffle,Ganache,和 Drizzle

  • Truffle Box 是基于 Truffle 的预定义项目模版+开发环境

Truffle 安装流程

先安装 node.js。已安装的可以跳过。

脚本地址:https://github.com/hyd628/OneBlockCourseScripts/tree/main/Week3

安装 Moonbeam Truffle Box

Moonbeam Truffle Box 包含内容 Truffle box 就是我们提前配置好的 Moonbeam 的 Docker 的镜像。

  • 完整的 Moonbeam 开发环境

  • 可以 target 本地节点或 Moonbase Alpha 测试网

  • 包含简单的 ERC20 智能合约示例代码

  • Moonbeam Truffle 插件(帮助大家更方便的使用这个容器)

使用 Truffle Box 安装和运行 Moonbeam 节点

  • 要从从 docker 容器里退出之后才用 truffle box 来安装 moonbeam 节点的。

  • 回到安装 Truffle Box 的执行目录,命令为:truffle run moonbeam install。从 docker 的 repository 拉下。然后使用 moonbeam 开发镜像。

  • 然后直接通过 truffle box 来运行我们的节点。命令为:truffle run moonbeam start。

  • 用 truffle run moonbeam status 来看一下这个节点的状态。其实它就是一个 docker 的容器,我们也可以通过 docker container ls 来看到这个容器的状态。

使用 MetaMask 连接 Moonbeam 节点

MetaMask 插件下载地址 https://metamask.io/download

Moonbeam 开发者文档 使用 MetaMask: https://docs.moonbeam.network/cn/getting-started/local-node/using-metamask/ 我们在调配 Metamask 之后有些参数是要从开发者文档里面去找到的。Moonbeam 是拥有比较完整的开发者文档的。 调配 Metamask 来连接本地运行的开发节点之后就可以做一些简单的账户操作跟测试。

常见问题

1. 在 truffle run moonbeam install 的时候可能会找不到一个依赖。那个依赖就是 truffle/hdwallet- provider。 Error:Cannot find module ‘@truffle/hdwallet-provider’

下载并安装这个依赖命令行运行: npm install -g @truffle/hdwallet

2. MetaMask 发送交易一直 Pending 常见原因是 Metamask 的 nuns 混乱了。处理方式就是在 Metamask 的设置里面把它从新设置一下。

相关资料

第三课课程视频链接:https://jhp.h5.xeknow.com/s/4xBPGm 第三课课程作业链接:https://wj.qq.com/s2/8937720/3a1d/ GitHubFAQ:https://github.com/hyd628/OneBlockCourseScripts Moonbeam 网站:https://moonbeam.network/ MoonbeamGitHub:github.com/PureStake/moonbeam Moonbeam 中文开发者文档:https://docs.moonbeam.network/cn/ MoonbeamDiscord:https://discord.gg/PfpUATX

关于 Moonbeam

Moonbeam 是波卡(Polkadot)网络上的以太坊兼容智能合约平台,为原生互操作应用程序的开发提供便利。通过其以太坊兼容性,开发者能够以最低程度的代码调整在 Moonbeam 上部署现有的 Solidity 智能合约和 Dapp 前端。作为在波卡(Polkadot)网络上的平行链,Moonbeam 也将受益于波卡(Polkadot)中继链的共享安全性以及与其它波卡(Polkadot)相关链的连接性。Moonbeam 由 PureStake 团队开发,目前正在预上线阶段,主网计划于 2021 年第四季度上线。 如需了解更多信息,请访问:https://moonbeam.network/

更多 Moonbeam 信息

官网:https://moonbeam.network 微博:https://weibo.com/u/7606061434 twitter:https://twitter.com/MoonbeamNetwork Telegram:https://t.me/moonbeam_CN Discord:https://discord.gg/skPfXvJWG7 中文电报群助手:@MoonbeamSister 微信公众号:Moonbeam Community