如何将useDApp配置连接至Rootstock(RSK)网络?
配置useDApp连接Rootstock(RSK)网络
可以配置useDApp连接Rootstock主网和测试网,仅添加readOnlyUrls是不够的,需要补充完整的网络元数据配置,让useDApp识别并支持RSK网络。
完整配置步骤
- 定义RSK主网和测试网的详细网络参数,包括链ID、链名、原生代币信息、RPC地址和区块浏览器地址。
- 在useDApp的配置对象中添加
networks数组,注入上述RSK网络参数。 - 确保
readOnlyUrls和网络配置对应,支持只读操作。
完整配置代码示例
import { DAppProvider } from '@usedapp/core'; // 定义RSK主网配置 const RSK_MAINNET = { chainId: 30, chainName: 'Rootstock Mainnet', nativeCurrency: { name: 'RSK Bitcoin', symbol: 'RBTC', decimals: 18, }, rpcUrls: ['https://public-node.rsk.co'], blockExplorerUrls: ['https://explorer.rsk.co/'], }; // 定义RSK测试网配置 const RSK_TESTNET = { chainId: 31, chainName: 'Rootstock Testnet', nativeCurrency: { name: 'Testnet RSK Bitcoin', symbol: 'tRBTC', decimals: 18, }, rpcUrls: ['https://public-node.testnet.rsk.co'], blockExplorerUrls: ['https://explorer.testnet.rsk.co/'], }; // useDApp全局配置 const useDAppConfig = { readOnlyChainId: 30, // 默认只读链为RSK主网 readOnlyUrls: { 30: 'https://public-node.rsk.co', 31: 'https://public-node.testnet.rsk.co', }, networks: [RSK_MAINNET, RSK_TESTNET], // 关键:注册RSK网络 }; // 在根组件中包裹DAppProvider function App() { return ( <DAppProvider config={useDAppConfig}> {/* 你的DApp业务组件 */} </DAppProvider> ); }
配置说明
networks数组是核心:useDApp依赖这些元数据识别网络,同时会帮助钱包(如MetaMask)自动添加或切换到RSK网络。- 仅
readOnlyUrls只能支持合约只读调用,无法完成交易签名、账户切换等交互操作,必须补充完整网络配置。 - 配置完成后,使用
useEthers的activateBrowserWallet方法即可触发钱包连接RSK网络,后续可正常使用useEtherBalance、useContractCall等hooks与RSK智能合约交互。
内容的提问来源于stack exchange,提问作者Juan José Sarasola
相关产品推荐
相关产品推荐

