Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何使用ethers.js和react.js调用/发送智能合同上的存款函数?

如何使用ethers.js和react.js调用/发送智能合同上的存款函数?
EN

Ethereum用户
提问于 2022-03-23 16:50:21
回答 1查看 2.4K关注 0票数 1

我正在使用醚和反应为我的dApp。我使用的智能合同有存款功能和提款功能。我的取款函数是从前端开始工作的,但是存款函数需要两个参数:地址和应付金额。我可以与孟买多边形扫描的智能合同进行交互,而不会有任何问题。

如何使用户在输入字段中输入金额,单击“投资”-button,然后需要在MetaMask中接受已存入的金额,然后调用invest()?

我被困在这里很久了。任何帮助都是非常感谢的。

下面是我试图与之交互的实体函数:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
function invest(address _ref) public payable{
        if (_invest(msg.sender, _ref, msg.value)) {
            emit OnInvest(msg.sender, msg.value);
        }
    }

以下是我在Next.js中为不接受参数的提取函数编写的工作代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
async function executeWithdraw() {
    if (typeof window.ethereum !== "undefined") {
      const contractAddress = "paste contract address here";
      const abi = [ paste abi here ];
      const contract = new ethers.Contract(contractAddress, abi, signer);
      try {
        await contract.withdraw();
      } catch (error) {
        console.log(error);
      }
    } else {
      console.log("Please install MetaMask");
    }
  }
EN

回答 1

Ethereum用户

发布于 2022-03-23 20:52:27

更新:我拿到了!

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
const transaction = await contract.deposit(address, { value: ethers.utils.parseEther("0.1") })

//发送0.1ETH等待transaction.wait()

票数 1
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/124543

复制
相关文章
使用 React 和 ethers.js 构建DApp
scaffold-eth[2] 因为引入内容太多了,对于我来说太复杂了, 不知道大家有没有同感,找到一篇使用 React 开发 DApp 的非常简单入门教程。翻译一下.
Tiny熊
2022/11/07
5.5K0
使用 React 和 ethers.js 构建DApp
数字藏品NFT的开发框架
数字藏品NFT(非同质化代币)的开发框架涉及区块链技术、智能合约、存储解决方案、用户交互等多个方面。以下是一个完整的数字藏品NFT开发框架,涵盖从技术选型到部署上线的关键步骤。
数字孪生开发者
2025/01/26
1030
数字藏品NFT的开发框架
浅谈如何定义和调用Python的函数
本文主要介绍了如何定义和调用Python函数。首先介绍了函数的概念和作用,然后详细讲解了如何定义函数和调用函数,最后列举了一个例子来加深理解。
企鹅号小编
2018/01/03
2K0
浅谈如何定义和调用Python的函数
shell中调用python函数,发送邮件
一、shell中调用python函数1.邮件正文是框架自带的生成的报告 2.邮件附件是第三方类库生成的炫酷的报告看板 send_email.pyimport refrom email.mime.application import MIMEApplicationfrom email.mime.multipart import MIMEMultipartfrom smtplib import SMTP_SSLfrom email.header import Headerimport schedulefr
懿曲折扇情
2022/08/24
8420
shell中调用python函数,发送邮件
如何使用 ethers.js 监听待处理交易
如果你喜欢观看而不是阅读,这里有一个视频指南:https://www.youtube.com/embed/YjQj6uk9M98
Tiny熊
2022/11/07
2.8K0
如何使用 ethers.js 监听待处理交易
Js 使用new关键字调用函数和直接调用函数的区别
var friend=new Person("Nicholas",29,"Software Engineer");
大道七哥
2019/09/10
3.7K0
Js   使用new关键字调用函数和直接调用函数的区别
solidity智能合约如何实现跨合约调用函数
比如现在有一个需求、我需要通过外部合约获取BRC20 token的总交易量。那么我需要在brc20的转账函数里面做一些调整,主要是两个函数内统计转移量。然后再提供外部获取函数。
终有链响
2024/07/29
1180
solidity智能合约如何实现跨合约调用函数
云函数之间互相调用实现邮件发送
很多时候,我们会面临在小程序的后台实现多重功能,比如用户管理、日志分析、数据排序等,不同的功能之间还会相互调用。如果把这些功能都写到一个云函数里,会造成云函数逻辑过于复杂,执行速度较慢等问题。此时,我们可以使用微信提供的SDK “wx-server-sdk” ,很方便的实现函数之间的调用。把功能函数拆分成一个个独立的云函数,会有很多好处:
Mason-Serverless
2018/11/20
11.7K1
如何在React.js中使用Shadcn/UI
学习如何在React.js中使用Shadcn/UI构建可自定义且轻量的界面。了解如何将其与Apipost集成,以实现高效的API管理和测试。非常适合希望提升React.js项目的开发者!
用户11531559
2025/02/28
1050
函数的定义和调用
Golang是一门强类型语言,函数是Golang中的基本构建块之一。在Golang中,函数可以定义返回值、参数、变量和常量等内容,并通过调用来执行特定的任务。本文将全面介绍Golang中函数的定义和调用,包括函数签名、不定长参数、闭包和匿名函数等,同时提供完整的代码示例。
用户1413827
2023/11/28
1400
函数的定义和调用
1.函数的定义和调用 1.1函数的定义方式 方式1 函数声明方式 function 关键字 (命名函数) function fn(){} 方式2 函数表达式(匿名函数) var fn = function(){ 方式3 new Function() var f = new Function('a', 'b', 'console.log(a + b)'); f(1, 2); ​ var fn = new Function('参数1','参数2'..., '函数体') 1.2函数的调用方式 普通函数
梨涡浅笑
2020/10/27
8810
函数的定义和调用
image.png
清出于兰
2022/05/11
9640
函数的定义和调用
函数的定义和调用
1.1函数的定义方式 方式1 函数声明方式 function 关键字 (命名函数) function fn(){} 方式2 函数表达式(匿名函数) var fn = function(){} 方式3 new Function( '参数1', '参数2',' 函数体'); var f = new Function('a', 'b', 'console.log(a + b)'); f(1, 2); console.1og(f instanceof Object ); //instanceof
星辰_大海
2020/10/26
1.5K0
函数的定义和调用
Solidity 智能合约开发 - 玩转 ethers.js
在之前的《Solidity 智能合约开发 - 基础》中,我们学习了 Solidity 的基本语法,并且了解了可以通过 Brownie 与 HardHat 等框架进行调试。而另一篇《Solidity 智能合约开发 - 玩转 Web3.py》中我们也通过 Web3.py 直接与我们本地的 Ganache 节点进行交互了。
pseudoyu
2023/04/11
1.1K0
Solidity 智能合约开发 - 玩转 ethers.js
Lua函数的冒号调用和点调用
冒号定义函数中的self指向函数所属表对象,即self是table类型,通过self表可以:访问挂载在该表下的所有冒号定义函数 如,有定义A={},A:b() A:c();函数b,c都是冒号定义函数,在b,c函数内部self是地址指向A的表,在b函数中可以通过self:c()来调用c函数,同理在c函数中也可以通过self:b()来调用b函数 代码示例:
bering
2020/03/19
3.4K0
oracle函数的调用应使用execute命令_matlab函数调用
之前一直使用的MySQL数据库,第一次接触Oracle就用到了函数和存储过程,今天跟大家分享一下使用过程.
全栈程序员站长
2022/10/04
2.2K0
oracle函数的调用应使用execute命令_matlab函数调用
RISC-V 函数调用约定和Stack使用
不同的处理器指令集不一样,而汇编语言中都是一条条指令,所以不同处理器对应的汇编语言必然不一样。
大忽悠爱学习
2023/10/11
1.1K0
RISC-V 函数调用约定和Stack使用
如何禁止函数的传值调用
按照参数形式的不同,C++应该有三种函数调用方式:传值调用、引用调用和指针调用。对于基本数据类型的变量作为实参进行参数传递时,采用传值调用与引用调用和指针调用的效率相差不大。但是,对于类类型来说,传值调用和引用调用之间的区别很大,类对象的尺寸越大,这种差别越大。
恋喵大鲤鱼
2018/08/03
2.8K0
如何在Vue中使用云开发的云函数,实现邮件发送
云开发的云函数能够让我们无需购买和管理服务器,就能够实现一些前端做不了,必须在服务端做的复杂操作,让我们大大降低了运维成本。本篇将会为您讲解,如何在前端主流框架Vue中使用云开发的云函数。 通过本篇您将可以学习到: 如何创建云开发环境 如何在Vue中使用云开发 如何在Vue中利用云开发的云函数,实现邮件的发送 1.创建云开发环境 打开云开发控制台地址:https://console.cloud.tencent.com/tcb,点击新建云开发环境 创建云开发环境 创建后进入控制台首页,复制环境ID保
腾讯云开发TCB
2020/09/14
3.7K0
Web3.0对前端很友好?
最近 web3.0 的呼声真的是越来越高,也越来越疯狂。对于我们前端来说,我们需要具备什么技术呢?
程序猿川子
2022/12/13
1.1K0
Web3.0对前端很友好?

相似问题

外汇存款智能合同

10

不能使用Ethers.js发送以太到智能合同

10

使用ethers.js版本6调用智能契约方法

30

用Ethers.js估算智能合同函数调用的煤气费

10

如何使用ethers.js从智能契约函数中获取返回的数据?

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文