试验性的库用于基本库中没有准备好包含的特性。API不是稳定的,而且不遵循semver版本控制, 因此需要它的应用程序应该指定所需的确切版本。
这些特性在ethers核心库中是不可用的,所以要使用它们,你必须安装@ethersproject/experimental
包并从其中导入它们。
BrainWallet inherits Wallet
Ethers在v4中删除了对BrainWallets的支持,因为它们是不安全的,并且很容易被猜到,从而让攻击者能够窃取资金。 提供这个类是为了确保使用了BrainWallets的旧系统仍然可以恢复其资金和资产。
生成BrainWallets,体验功能略有改进,其中生成的钱包有一个助记词。
生成一个与ether v3及更早版本兼容的BrainWallets。
EIP1193Bridge inherits EventEmitter
EIP1193Bridge允许将普通的EthersSigner和Provider作为标准的EIP-1193 Provider公开, 这在与其他库交互时可能很有用。
NonceManager inherits Signer
NonceManager设计用于为Signer管理nonce,在发送交易时自动增加。
目前NonceManager不处理重复广播(re-broadcast)。 如果您试图向不控制该帐户的节点上的网络发送大量交易,交易池可能会删除您的交易。
将来,如果NonceManager能记住交易并在网络上监听它们,并舍弃重复广播的交易,那就更好不过了。
另一个未来的特性将是某种失败模式。例如,一个交易通常依赖于另一个首先被挖出的交易。
创建一个新的NonceManager。
signer管理的nonce值。
与signer关联的provider。
为signer设置当前交易计数(nonce)。
在使用该类之外的方法与signer交互时,这可能很有用。
按count增加当前交易数。
在使用该类之外的方法与signer交互时,这可能很有用。