5分钟内构建您的第一个dApp:第二部分

这是关于如何在5分钟内构建dApp的系列教程的第二部分。 如果您还没有阅读我们的第一个教程,建议您从这里开始。

在本教程中,您将完成对Dharma的贷款的整个周期:请求贷款并允许贷方偿还贷款-无需中介!

您将使用我们已发布到GitHub的不完整的dApp,并逐步填写缺少的部分。 如广告所示,完成此dApp所需的时间不会超过几分钟。

准备? 让我们潜入。

项目设置

首先,您需要使用项目入门代码克隆GitHub存储库:

  git clone https://github.com/dharmaprotocol/dharma-tutorial-2 

从那里导航到项目的根目录:

  cd dharma-tutorial-2 

并安装项目的依赖项:

  npm安装 

安装完成后,运行以下命令以启动本地区块链

  npm运行区块链 

区块链启动后,您将要打开一个新的终端窗口,并从项目的根目录提供前端应用程序:

  cd dharma-tutorial-2 && npm开始 

在浏览器中,您应该会看到第一个教程中的Web表单,以及我们添加的一些新小部件,这些新小部件是在您入侵时从区块链读取数据的。

在原始状态下,贷款请求摘要视图应如下所示:

第1步

在上一教程中,我们创建了一个Web表单,该表单允许用户create Dharma贷款请求。

但是,要准备满足此贷款请求,还需要借款人采取进一步的措施。

line 118 src/components/App/App.jsx ,您需要在创建贷款请求的处理程序中进行以下附加调用:

 等待loanRequest.allowCollat​​eralTransfer(debtorAddress) 

此功能完成什么工作?

在创建贷款请求时,用户指定抵押金额。 抵押品是借款人在无力偿还贷款时愿意放弃的资产。

在前区块链世界中,需要在由中立的第三方(托管)持有的法律合同中指定此抵押品,并由法院进行仲裁。

我们的dApp提供了更为简单的体验-无需涉及银行,律师或法院系统。

怎么样? 通过区块链智能合约

在此特定情况下,对allowCollateralTransfer的调用正在从借款人向Dharma的一份智能合约发送一条消息,授权其接受抵押品的保管,以便它可以以编程方式执行协议的条款。

第2步

在开始第2步之前,请尝试填写表格并按“提交”。 验证您的贷款请求摘要小部件是否按预期进行:

如果是这样,我们现在可以换档并专注于方程式的借方。

我们的贷款用户界面的MVP如下所示:

正如UI所建议的,贷款人在填写贷款请求时需要采取两个步骤。 让我们一次解决一个问题。

类似于借款人在步骤1中需要授权抵押品转让的方式,贷方也将需要授权本金的转让。

line 30 src/components/Tutorials/Fill.jsx ,您需要连接按钮的handler函数以进行以下调用:

 等待loanRequest.allowPrincipalTransfer(creditorAddress); 

一旦添加以下代码行,按一下按钮以授权本金转账,现在将启用填充按钮:

现在,我们为最后一步做好了准备!

第三步

启用本金和抵押品权限后,最后一项业务是实际调用贷款请求的fill

line 23 src/components/CreditorForm/FillLoan.jsx ,您需要连接按钮的处理程序以进行以下调用:

 等待loanRequest.fill(creditorAddress); 

成功偿还贷款后,抵押品和本金将被转移,区块链将反映新的余额:

结论

只有两个教程,我们已经成功创建了一个dApp,该dApp允许互联网上的任何两个人从事完全自治的p2p贷款。 没有法院。 没有律师。 没有银行。

在我们的下一个教程中,我们将使借款人能够向贷方还款-确保它们不会违约并失去抵押品。


在这一点上,您已经完全了解破解您可以梦想的任何区块链贷款应用程序所必需的构造块-小额贷款网站,众筹门户网站或抵押贷款的新变化。

如果您感到鼓舞而又渴望获得更多,我们将启动Dharma开发人员计划,以帮助有抱负的dApp开发人员树立对未来的愿景。

作为该社区的成员,您可以访问我们的Slack频道-在这里您可以找到志趣相投的开发者社区,并获得Dharma团队的全天候支持-并邀请我们参加即将举行的开发者聚会!

立即加入佛法开发人员计划!

立即加入佛法开发人员计划!

快乐黑客❤

达摩队


Kayvon Tehranian是Dharma Labs的高级软件工程师,Dharma Labs是一家为高效,无边界和透明的信贷市场构建区块链基础设施的公司。