Metamask

嘗試在 Typescript 中使用 window.ethereum.request 錯誤,屬性“request”在“EthereumProvider”類型上不存在

  • January 8, 2022

除了去年 11 月的一個未回答的問題,我什麼都找不到。. . .

我正在為 Metamask 一月份的更改修改一些打字稿程式碼(在 Visual Studio 中)。以前,我使用的是 web3。現在我只是想使用window.ethereum。

我找不到帶有類型聲明的DefinitelyTyped(或任何其他類型)文件。

我擔心這真的很簡單/愚蠢,但我完全不知所措。

用於(window as any).ethereum.request繞過類型檢查。

您可以嘗試在開頭添加以下行:

declare let window: any;

然後,您可以執行以下操作:

import Web3 from 'web3';

//...

  let web3: Web3;
  if (window.ethereum) {
     web3 = new Web3(window.ethereum);
     // Ask User permission to connect to Metamask
     await window.ethereum.enable();
  };

引用自:https://ethereum.stackexchange.com/questions/94439