【发布时间】:2023-03-12 17:08:01
【问题描述】:
我目前正在升级以太坊 dApp(使用 React JS)以符合新的 EIP-1559 标准(A.K.A. London hard fork)。该应用程序使用 web3.js (v1.5.2) 来启动交易,其形式类似于
const contract = new web3.eth.Contract(
contractABI,
CONTRACT_ADDRESS,
);
await contract.methods
.deposit(recepient, amount)
.send({ from: account, value })
我们鼓励用户使用元掩码与我们的应用交互。
尽管我既没有指定gasPrice、gasLimit,也没有在发送事务时指定 EIP-1559 指定的等效 maxPriorityFeePerGas 或 maxFeePerGas,但元掩码仍然警告(在我的本地测试环境中)@987654321 @ 以及潜在的巨额费用。
点击“编辑”another warning message appears,更糟糕的是,我(或者我猜是 web3)应该“建议”的值are not reasonable according to metamask's estimate.
有没有办法使用 web3 与 metamask 接口来接受 metamask 的建议值,删除这些 metamask 警告并确保正确计算费用?我注意到在查看https://app.uniswap.org/ 时,尽管 metamask 仍显示第一个“app.unswap.org 建议的 gas fee”警告,但 txn 时间已正确计算,并且单击“编辑”不会出现任何进一步的警告。 uniswap 与 metamask 更合理的交互是否可以使用 web3.js 进行复制?
【问题讨论】:
-
我现在也面临同样的问题,是否有任何官方文档(2021 年 11 月)?
标签: javascript web3 metamask