http://www.7klian.com

探究Compound管理及构建管理界面

    }
获取所有委托
    if (proposalId == id) {
[3]文档: https://compound.finance/docs/governance
[5]Governor智能合约: https://etherscan.io/address/0xc0da01a04c3f3e0be433606045bbbb7017a7323e38
[11]利用Web3.js对COMP持有人举办直接区块链查询: https://github.com/compound-developers/compound-governance-examples/blob/master/web3-examples/get_comp_holders.html
[6]映射: https://learnblockchain.cn/docs/solidity/types.html#mapping-types
    “id”: 18,
  });
  delegates.sort((a, b) => {
· 委托界面 – 用户将投票权委托给某个地点。
      p.against_votes = parseFloat(p.against_votes).toFixed(2);
getProposals();
// Ropsten COMP Contract
delegate.json
  {
[24]原文链接: https://medium.com/compound-finance/building-a-governance-interface-474fc271588c
一旦相识了基本常识,就可以轻松构建用于管理的接口或扩展其成果。要更深入地相识管理,请查察完整的文档[4]。为了快速入门,这里仅列出要害观念。
    console.error(e);
让我们按照其COMP余额按降序获取所有COMP代币持有者。我们可以通过CompoundAPI的管理处事[10]来实现。
let currentDelegate;
COMP是在
Compound 管理中具有 1:1 投票权的代币。以太坊钱包中的COMP代币持有人可以利用COMP 管理合约[1]中提供的函数将投票权委托给本身或任何其他以太坊地点。
我们将按顺序演示如何执行以下每个操纵:
  “page_size”: 100,            // number of results in a page
  }
// Add a list of active proposals to the UI
· 我的署理投票界面 – 利用castVoteBySig 成果,用户可以建设分派给其他用户的投票。这将答允另一个用户署理他们提交投票(并付出gas),而无需委托给另一个用户。
  }
    holders.push({
· 获取所有提案的选票
[20]Compound协议管理文档: https://compound.finance/docs/governance?ref=medium
[
获取所有提案
get_all_proposals_api.js [完整代码示例](https://github.com/compound-developers/compound-governance-examples/blob/master/api-examples/get_proposals.html “完整代码示例”)
[
  let holders = [];
权力下放的主要方针是使协议可以或许成长成为具有弹性的金融基本设施,而没有可知的弱点,也无需依赖任何团队。通过这种方法,,协议可以跟着整个加密生态系统的增长而继承扩展,而且可以永久存在或至少陪伴着
Compound协议只能由COMP代币持有者及其署理进级和设置。协议的所有潜在变动,包罗增加新市场或调解系统参数(如抵押因子或利率算法),都必需通过管理智能合约中指定的提案和投票进程。
  // “with_detail”: true, // boolean
Compound管理最冲感人心的部门是在变动协议的提案中投下你的一票。委托者可觉得每个有效的提案投阻挡票或赞成票。
  });
5. Timelock时间锁 — 所有管理和其他打点操纵都必需在时间锁中逗留至少2天,然后才气在协议中实施。每个 cToken 合约和 Comptroller 合约都答允 Timelock 地点修改。Timelock 合约可以修改系统参数、逻辑和合约,以 “延迟时间、选择退出” 的进级模式举办修改。

    proposalListContainer.innerHTML = proposalItemTemplate(proposals);
} catch (e) {
  delegates.forEach(d => {
可能,可以从Compound API 检索此信息。这是Compound API 示例[12]。这些示例建设一个JSON工具数组,这些工具具有委托地点和COMP供应总量的投票权重(百分比)。
    console.error(e);
    “vote_weight”: “2.000000%”
获取所有COMP代币持有人
    window.location.reload();
[
        blockNumber: ballot.blockNumber,
4. Voting投票 — 用户将投票权委托给其地点后,便可以对单个提案投票赞成或阻挡。提案处于“有效(Active)”状态时可以举办投票。投票可以利用 castVote 当即提交,也可以利用 castVoteBySig 离线签名稍后提交。假如大大都票(到达 4%的委托COMP的法定人数,即400,000 COMP)对某个提案投票赞成,则该提案将在时间锁中列队。
  });
        address: voter,
  });

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

相关文章阅读