npm 包 pudding 使用教程

本文将介绍如何使用 pudding 这个 npm 包。pudding 可以帮助前端开发者在浏览器端调用智能合约。

为什么要使用 pudding?

在以太坊上,智能合约是区块链上的应用程序。它们由以太坊虚拟机(EVM)处理,可以使用编写的编程语言(如 Solidity)完成。 调用智能合约需要一些专业的技能和知识,因此不是很容易实现。 pudding 的目的就是提供一个简化这个过程的工具。

安装 pudding

你可以通过 npm 安装 pudding:

--- ------- -------

使用 pudding

使用 pudding,你需要新建一个 pudding 实例,这个实例包括地址、ABI(Application Binary Interface)和 web3 对象等信息:

--- ------- - -------------------
--- ---------- - --- -----------------------
-------------------------- ------------------------------------------------------
---------------------
  ----- ---------------------------------------------
  ---- --------
  --------- -----------
---

上述代码中,jsonInterface 是你编写的合约 ABI 的 JSON 文件,MyContract 是 pudding 实例的对象名。setProvider 方法用来设置 RPC 的提供者;defaults 方法可用来设置默认参数,比如发送交易时的默认 gas 和 gasPrice。

调用当前合约的方法:

--------------------------------- --------- -----------

其中,arguments是该方法所需要的参数。options参数是一个可选的对象,用来设置发送交易或调用合约方法的选项,比如:账户信息、合约的地址、gas 价格等。callback方法是一个可选的回调函数,用来处理结果。

例如,下面的代码创建了一个 pudding 合约的实例:

--- ------------- - --- -----------------------
----------------------------- ------------------------------------------------------
------------------------
  ----- ---------------------------------------------
  ---- --------
  --------- -----------
---

--- ---------------- - --------------------

这段代码中,我们创建了一个简单的存储合约实例,并调用了 new() 方法,使用默认的账户信息和相应的 gas 来创建实例。

pudding 的示例代码

假设我们有一个简单的合约,叫作 SimpleStorage.sol:

-------- ------------- -
  ---- -----------

  -------- -------- -- -
    ---------- - --
  -

  -------- ----- -------- ------- ----- ------- -
    ------ -----------
  -
-

那么,我们可以使用 pudding 来通过合适的方式调用该合约:

--- ------- - -------------------
--- ------------- - ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--- ------------- - --- -----------------------

----------------------------- ------------------------------------------------------
------------------------
  ----- ---------------------------------------------
  ---- --------
  --------- -----------
---

--- ---------------- - --------------------
------------------------ --------------- ------- -
  -- ------ ------
---

------------------------------------ ------- -
  --------------------------------- -- ------- --
---

上述代码中,我们使用 jsonInterface 参数来创建实例,设定了 RPC 的提供者和默认参数,并调用了合约实例上的 set()get() 方法,分别设置和获取合约中存储的数据。

总结

本文介绍了如何使用 pudding 这个 npm 包,在浏览器端调用智能合约。通过 pudding,开发者可以更加方便地调用合约中的方法,而不需要了解智能合约的底层技术细节。这对于开发者来说,是一个很方便的工具,可以大大提高开发效率和减少开发难度。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/74623


猜你喜欢

  • npm包jstransformer-ejs使用教程

    作为一位前端开发者,我们都知道前端技术在不断进化,并且有很多工具我们可以使用来提高我们的效率。而jstransformer-ejs就是其中一个强大且实用的npm包。

    5 年前
  • npm 包 styledown 使用教程

    在前端开发过程中,我们经常需要编写文档来记录我们的代码和组件。而 styledown 就是一个帮助我们自动生成样式文档的 npm 包。在这篇文章中,我们会详细介绍 styledown 的使用方法,帮助...

    5 年前
  • npm 包 Pellet 使用教程

    Pellet 是一个在前端开发中使用的 npm 包,它可以帮助开发者快速构建语法规范、易于维护的前端工具库。本文将为您详细介绍 Pellet 的使用方法。 安装 --- ------- ------ ...

    5 年前
  • npm 包 wepesi-repository 使用教程

    引言 wepesi-repository 是一个可用于前端项目的 npm 包,它提供了数据的 CRUD 操作接口。 我们在前端开发过程中经常需要和后端的接口进行数据交互。

    5 年前
  • npm 包 wepesi-core 使用教程

    简介 wepesi-core 是一个基于 Vue.js 构建的前端组件库,提供了一些常见的 UI 组件和工具函数,适用于构建各种类型的 Web 应用程序。该组件库亦可以通过 npm 包管理器进行下载使...

    5 年前
  • npm 包 node_xslt 使用教程

    前言 在现代 Web 开发中,人们经常需要将 XML 数据转换为 HTML 或其他格式,这就需要使用 XSLT (XML to HTML)转换器工具。在 Node.js 中,我们可以使用 npm 包 ...

    5 年前
  • npm 包 wepesi 使用教程

    随着前端技术的发展,npm 成了我们日常工作中必不可少的一个工具。其中一个比较有用的 npm 包就是 wepesi,它可以帮助我们在 Vue 项目中实现类似于微信的下拉刷新功能。

    5 年前
  • npm 包 k-bundle 使用教程

    前言 对于前端开发者而言,管理依赖是必不可少的一项工作。Npm 这个包管理工具极大地减轻了我们的负担,但是,包管理的同时也带来了一个新的问题:前端依赖的加载问题。由于前端依赖往往是以模块化的方式组织的...

    5 年前
  • npm 包 circumflex-assets 使用教程

    在前端开发中,我们经常需要使用各种素材文件如图片、字体、样式等,而这些素材文件的管理和加载往往会让人头疼。npm 包 circumflex-assets 就是为解决这个问题而设计的,它可以简化我们的代...

    5 年前
  • npm 包 gulp-doxx 使用教程

    在前端开发中使用 gulp 和其他工具可以使项目开发更加高效和方便。gulp-doxx 是一个 npm 包,它可以将 JavaScript 代码自动生成文档,方便团队协作和代码维护。

    5 年前
  • npm 包 node-toybox 使用教程

    在前端开发中,我们常常会需要对字符串、数组、对象等进行操作和转换。而在 Node.js 中,我们可以使用 npm 包来轻松实现这些功能。 其中,node-toybox 是一个简单易用的 npm 包,提...

    5 年前
  • npm 包 express-webapp-assets 使用教程

    简介 express-webapp-assets 是基于 Express 框架的 web 应用程序资源管理器。它可以通过简单的配置来管理静态和动态页面的依赖关系。此 npm 包最适合于拥有大量依赖的复...

    5 年前
  • npm 包 css-devendorize 使用教程

    在前端开发过程中,我们经常会使用第三方的 CSS 库或框架来提高开发效率,但是其中存在浏览器兼容性问题,一些 CSS 属性或值在不同浏览器中表现不一致,我们需要写大量的兼容性代码。

    5 年前
  • npm 包 bundle-minify 使用教程

    在前端开发中,压缩 JavaScript 代码以减小文件体积是十分必要的。而 bundle-minify 就是一个可以帮助我们打包并且压缩 JavaScript 文件的 npm 包。

    5 年前
  • npm 包 teamnora.nake 使用教程

    前言 在进行前端开发的过程中,经常需要进行代码测试、构建、发布等繁琐的操作。为了提高效率,人们开发出大量的工具包和框架。其中,npm 是前端开发中最常用的包管理器之一。

    5 年前
  • npm 包 shark-transformer 使用教程

    在前端开发过程中,经常需要对数据进行转换、格式化等操作。npm 包 shark-transformer 可以帮助我们更便捷、高效地完成这些任务。本篇文章将详细介绍 shark-transformer ...

    5 年前
  • npm 包 expand-promise 使用教程

    expand-promise 是一个在前端开发中非常实用的 npm 包,可以帮助开发者更加方便地处理异步任务。本文将介绍 expand-promise 的基本使用方法,以及一些高级功能和示例代码,希望...

    5 年前
  • npm 包 "shark-tree" 使用教程

    概述 "shark-tree" 是一款前端使用的树形组件,它支持无限级嵌套树形结构,并提供了可定制的样式和事件接口。本文将会介绍如何使用 "shark-tree" 包,并且提供详细文档和示例代码来辅助...

    5 年前
  • npm 包 shark-logger 使用教程

    前言 在前端开发中,无论是开发还是调试阶段,对于日志的管理都是非常重要的,并且经常需要查看和分析日志,以便快速定位和解决问题。而 shark-logger 就是一个能够帮助前端开发者更好地管理日志的 ...

    5 年前
  • npm 包 shark-transformer-uglify-js 使用教程

    在前端开发中,我们常常需要对大型 JavaScript 代码进行压缩,以减小文件大小,提高执行效率。而 npm 包 shark-transformer-uglify-js 就是一款非常优秀的 Java...

    5 年前

相关推荐

    暂无文章