getAddress - 导出地址
显示并返回Trezor钱包指定BIP32路径的地址。要求用户 在Trezor钱包上确认导出操作。
调用方法
ES6:
const result = await TrezorConnect.getAddress(params);
CommonJS:
TrezorConnect.getAddress(params).then(function(result) {
});
调用参数:
可选的公共参数。
导出单个地址:
- path:BIP32路径,必须
- address:验证用的地址,可选
- showOnTrezor:是否在Trezor钱包上显示,布尔值,默认:true
- coin:数字货币标识字符串,可选,未设置的话则从path推导
- crossChain:是否跨链,布尔值,可选
批量导出地址:
- bundle:上述对象数组
示例代码
显示第一个比特币账户的第三个地址:
TrezorConnect.getAddress({
path: "m/49'/0'/0'/0/2",
coin: "btc"
});
返回第一个比特币账户的一组地址,不显示在Trezor设备上:
TrezorConnect.getAddress({
bundle: [
{ path: "m/49'/0'/0'/0/0", showOnTrezor: false }, // address 1
{ path: "m/49'/0'/0'/0/1", showOnTrezor: false }, // address 2
{ path: "m/49'/0'/0'/0/2", showOnTrezor: false } // address 3
]
});
使用应用中的自定义UI验证地址:
import TrezorConnect, { UI } from 'trezor-connect';
TrezorConnect.on(UI.ADDRESS_VALIDATION, data => {
console.log("Handle button request", data.address, data.serializedPath);
// here you can display custom UI inside of your app
});
const result = await TrezorConnect.getAddress({
path: "m/49'/0'/0'/0/0",
address: "3L6TyTisPBmrDAj6RoKmDzNnj4eQi54gD2",
});
// dont forget to hide your custom UI after you get the result!
返回结果
返回单个地址:
{
success: true,
payload: {
address: string, // displayed address
path: Array<number>, // hardended path
serializedPath: string,
}
}
批量返回地址:
{
success: true,
payload: [
{ address: string, path: Array<number>, serializedPath: string }, // address 1
{ address: string, path: Array<number>, serializedPath: string }, // address 2
{ address: string, path: Array<number>, serializedPath: string }, // address 3
]
}
错误信息:
{
success: false,
payload: {
error: string // error message
}
}
从之前版本迁移
V4或更早版本:
TrezorConnect.getAddress("m/49'/0'/4'/0/0", function(result) {
// added "serializedPath" field
});
应当是:
// params are key-value pairs inside Object
TrezorConnect.getAddress({
path: "m/49'/0'/4'/0/0"
}).then(function(result) {
...
})