我正在尝试在 Nextjs 13.0.1 中像这样访问以太坊提供程序:
import { ethers } from "ethers";
export const signMessage = () => {
const provider = new ethers.providers.Web3Provider(window.ethereum);
const signer = provider.getSigner();
try {
signer.signMessage("Hey hey").then((result) => {
console.log(result);
});
} catch (error) {
// handle error
console.log(error);
}
};
Run Code Online (Sandbox Code Playgroud)
但它总是给我错误:
Unhandled Runtime Error
TypeError: Cannot read properties of undefined (reading 'Web3Provider')
Run Code Online (Sandbox Code Playgroud)
我尝试过不同的提供商,但总是收到上面的错误消息。
有人知道为什么它适用于 Nextjs 12 但不适用于 Next 13?