0

我正在编写一个 Web 应用程序(使用 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
});
4

0 回答 0