当我们推出基板-前端模板时,你首先看到的是一堆有余额的虚拟账户,我的印象是这些账户是从运行链的创世纪存储中提取的。但是,当我进入chain_spec.rs文件并删除所有帐户,甚至重命名testnet_genesis函数中的一些帐户时,我继续查看帐户,尽管帐户余额为零:

在控制台上,keyring.getAccounts()返回这些帐户。
下面是我的ChainSpec的样子:
Ok(ChainSpec::from_genesis(
"Development",
"dev",
ChainType::Development,
move || {
testnet_genesis(
wasm_binary,
vec![authority_keys_from_seed("Foundation")],
get_account_id_from_seed::<sr25519::Public>("Foundation"),
vec![
get_account_id_from_seed::<sr25519::Public>("Foundation"),
],
true,
)
},
// Bootnodes
vec![],
// Telemetry
None,
// Protocol ID
None,
// Properties
Some(props),
// Extensions
None,
))如你所见,没有提到爱丽丝,鲍勃,查理等人。我甚至搜索了整个节点文件夹,发现提到了这些帐户,但没有结果。有人能告诉我如何正确的添加新的帐户,sudo帐户,等等到我的成因配置?谢谢。
发布于 2021-12-29 10:08:36
帐户只是节点模板中的公钥。这意味着您可以检查每个可能的公钥,它将返回零。但这并不意味着存在任何与此帐户相关的状态。(假设您配置了高于0的存在权存款)。
如果您想在成因上添加帐户,只需查看testnet_genesis即可。endowed_accounts(第四个参数)是您要搜索的内容。这些是在创世纪得到一些平衡的帐户。所有这些代码都依赖于链,您可以随意更改它。
发布于 2021-12-29 12:40:29
这些测试帐户当前添加的条件是:
ChainType::Development或chainType链名为Development或Local Testnet ( https://github.com/polkadot-js/common/blob/2065b437e6ca4303726a04b6560713585c717b76/packages/util/src/is/testChain.ts#L4 )(第二次检查纯粹是为了后向可压缩的目的)
正如bkchr所提到的,在这些帐户中没有存储状态,所以直到某些东西被转移到帐户中,它们才真正存在。
https://stackoverflow.com/questions/70508561
复制相似问题