我正在编写一个网络应用程序(使用 javaScript ethers.js)来与 Metamask 交互。如果我想发送交易,我会这样做:
const provider = new ethers.providers.Web3Provider(window.ethereum)
const signer = provider.getSigner()
// here Metamask will ask to confirm tracsaction
const tx = await signer.sendTransaction({
to: "0x.....",
value: someAmount
});
但是如果我想让 Metamask 只批准交易并且程序可以做一些逻辑并在逻辑完成后进行交易,我该怎么办?像这样:
const provider = new ethers.providers.Web3Provider(window.ethereum)
const signer = provider.getSigner()
// here Matamask ask to approve the amount
//......
// await for some logic here...
// Could Metamask here NOT ask to confirm transaction anymore (?)
const tx = await signer.sendTransaction({
to: "0x.....",
value: someAmount
});