问题标签 [parity-io]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
substrate - 为什么进行交易时总发行(余额托盘)下降?
所以我开始一个链的目的是它会有固定数量的代币,我这样做的方式是配置一个endowed_account
:Alice
在创世配置中使用一定数量的代币。Alice
所以恰好也是唯一的验证者,她也是唯一运行该节点的人。当我尝试从 Alice 向 Bob 发送一些代币,比如 10 个单位时,Bob 得到了全部金额,但总发行量下降,大概是费用金额。就像 Alice 最初有 100 个,然后将 10 个发送给 Bob,块浏览器中的总发行量显示为 99.999 个单位。
我的直觉是,pub type TotalIssuance<T: Config<I>, I: 'static = ()> = StorageValue<_, T::Balance, ValueQuery>;
计算存在存款之上的所有账户的免费余额和保留余额的总和,然后存储该值,这就是为什么我们看不到其中考虑了“费用”,而“费用”被有效地烧掉了. 然而,这是我的猜测,我不确定。我最初会认为是TotalIssuance
流通中代币数量的硬上限,但真的是这样吗?
除此之外,我不明白,既然 Alice 是这条链中唯一的一个验证者和区块生产者,那么费用应该是她的权利,因为通常区块奖励会流向区块生产者?然而,事实并非如此。
我对转帐功能的第二个疑问是,文件说如果转帐电话使余额低于存在存款,则该帐户将被“收割”。这意味着什么?他们还提供了另transfer_keep_alive
一种引用:
工作方式与 相同
transfer
,但有一个额外的检查,即转移不会杀死原始帐户。
我无法理解这些术语,因为我之前读过的内容说所有有效的 pub/private 密钥对都是有效的“帐户”。那么在这种情况下,杀戮和收获意味着什么?
blockchain - 交易成功但在弹出窗口中收到无效通知
在账户之间的简单转移中,金额正在转移,事件也正在发出,但弹出的通知显示无效(balances.transferKeepAlive 无效)错误,如屏幕截图所示。发出事件的错误屏幕截图