探究dapp泰山众筹及链上众筹系统开发实现技术及源码

简介: 什么是DAPP根据David Johnston在文章DavidJohnstonCEO/DecentralizedApplications里的定义,只有当满足以下所有条件时,一个应用才可以称之为DAPP。

  什么是DAPP

根据David Johnston在文章DavidJohnstonCEO/DecentralizedApplications里的定义,只有当满足以下所有条件时,一个应用才可以称之为DAPP。

应用必须完全开源、自治并且没有一个实体控制着该应用的大部分代币(Token)。DAPP众筹系统开发流程分析:I35-7O98-O7I8该应用必须能够根据市场的反馈及技术要求进行升级,但是升级必须由应用的用户达成共识之后才可以进行;

应用的数据必须加密后存储在公开的区块链上;

应用必须拥有代币机制(可以使用已存在的代币或者新发行一种内置代币),矿工或者应用维护节点需要得到代币奖励;

应用代币的产生必须依据标准的加密算法,有价值的节点可以根据该算法获取应用的代币奖励。

泰山众筹的基本概念

1、四进一出:当众筹活动到第四期成功的时候,第一期参与众筹的粉丝就会出局,从而获的奖励,当第五期众筹成功的时候,第二期参与的粉丝出局,获得出局奖励,以此类推,直至众筹活动结束或失败。

2、倍利复增:每完成一期众筹活动的时候,下一期将增长30%的众筹资产

3、爆仓重生:众筹活动时间内,无法完成众筹,则会众筹失败,那就视为爆仓,将重新开启第一期循环。

与from表单交互

  定义表单项的onchange事件函数,该函数把表单项的值设置到状态变量中

  handleChange=(e,{name,value})=>this.setState({[name]:value})

  然后写一个函数来看看是否触发了按钮:
  handleCreate=()=>{

  let{active,projectName,targetMoney,supportMoney,duration}=this.state

  console.log('projectName:',projectName)

  console.log('targetMoney:',supportMoney)

  }

  定义表单提交函数

  handleCreate=async()=>{

  let{active,projectName,targetMoney,supportMoney,duration}=this.state

  console.log('projectName:',projectName)

  console.log('targetMoney:',supportMoney)

  this.setState({active:true})

  try{

  let res=await createFunding(projectName,targetMoney,supportMoney,duration)

  alert('创建合约成功!n')

  this.setState({active:false})

  }catch(e){

  this.setState({active:false})

  console.log(e)

  }

  }

  在interaction.js文件中定义createFunding方法,并导出该方法。

  let createFunding=(projectName,targetMoney,supportMoney,duration)=>{

  return new Promise(async(resolve,reject)=>{

  try{//调用创建方法

  let accounts=await web3.eth.getAccounts()

  let res=await fundingFactoryInstance.methods.createFunding(projectName,targetMoney,supportMoney,duration).send({

  from:accounts[0],

  })

  resolve(res)

  }catch(e){

  reject(e)

  }

  })

  }

5.在AllFundingTab添加表单项,在render方法中把状态变量的数据结构出来

render(){

    return(
        <div>
            <CardList details={this.state.allFundingDetails}/>
            <div>
                <h3>参与众筹</h3>
                <Dimmer.Dimmable as={Segment} dimmed={this.state.active}>
                    <Dimmer active={this.state.active} inverted>
                        <Loader>支持中</Loader>
                    </Dimmer>
                <Form onSubmit={this.handleInvest}>
                    <Form.Input type='text' value={''} label='项目名称:'/>
                    <Form.Input type='text' value={''} label='项目地址:'/>
                    <Form.Input type='text' value={''} label='支持金额:'
                            labelPosition='left'>
                        <Label basic>¥</Label>
                        <input/>
                    </Form.Input>
                    <Form.Button primary content='参与众筹'/>
                </Form>
                </Dimmer.Dimmable>
            </div>
        </div>

)
}
相关文章
|
4月前
|
安全 Java 区块链
matic马蹄链合约DAPP项目系统开发技术(成熟语言)
Matic Network是一种基于侧链的公共区块链扩展解决方案。它的基础是Plasma框架的调整实施。Matic提供了可扩展性,同时以安全和分散的方式确保了卓越的用户体验。它在KovanTestnet上为Etalum提供了一个工作实现。Matic打算在未来支持其他区块链,这将使它能够提供互操作性功能,同时为现有的公共区块链提供可伸缩性。
|
区块链
DAPP众筹互助系统开发(成熟技术)|DAPP众筹互助系统开发案例分析
智能合约是一种以代码形式存在的合约constructor()public
IPPswap交易所系统开发详细指南丨需求设计丨教程方案丨源码项目
Based on the development of the IPPSwap exchange exchange exchange bottom pool LP pledge mining system you mentioned, the following is an overview of its basic process and elements
|
存储 区块链 数据安全/隐私保护
DAPP链上合约游戏系统开发技术详细丨dapp农场养成种植种树游戏项目系统开发成熟技术/规则详细/源码平台
  DAPP智能合约技术又称之为加密合约技术,是在一定的条件直接控制数字的技术,在各方之间转移的一种计算机程序。智能合约不同于传统的技术方式定义了协议处罚和规则,还定义了自动强制执行的义务。
|
存储 算法 区块链
链游项目系统开发(方案设计)丨DAPP链游系统开发(案例分析)/成熟技术/区块链游戏开发/源码说明
  在区块链中,每个块包含了一定数量的交易信息和该块的唯一标识符,同时还包含了前一个块的哈希值。这样的设计保证了区块之间的顺序和完整性,一旦一个块被添加到区块链中,它就不可更改。This makes blockchain a secure and trustworthy distributed ledger that can be used to record and verify various types of transactions.
|
前端开发 JavaScript Java
马蹄链DAPP合约项目系统开发技术方案丨(源码搭建)
马蹄链DAPP合约项目系统开发技术方案丨(源码搭建)
113 0
|
5G 区块链 调度
DAPP马蹄链Matic智能合约系统开发详细及分析丨Matic马蹄链智能合约开发案例源码版
   5G技术可以为智慧物流提供高速、低延迟的数据传输和通信服务,实现物流的实时监控和管理。例如,在物流配送中,使用5G技术可以实现对货物的实时跟踪和配送调度,提高物流效率和准确性。
DAPP马蹄链系统开发(方案详解)丨DAPP马蹄链系统开发(源码项目)
  大公排指的是全网排列,小公排指的是单体伞下排列,一条线公排指的是按一条线排列,跳排指的按指定某代数为推荐关系。
DAPP马蹄链系统开发(方案及项目)丨DAPP马蹄链系统开发(源码详情)
  Metaverse is a virtual world constructed by humans using digital technology,mapped or transcended by the real world,and can interact with the real world.It is a digital living space with a new social system.
|
区块链 vr&ar Android开发
区块链游戏系统开发(链游开发源码)丨链游项目系统开发(方案及原理 )
 什么是DAPP?   DApp是Decentralized Application的缩写,译为:分散式的应用程序。App我们都知道,我们在智能手机上安装的应用程序也就是App。而DApp它的意思就是分散式的应用程序或去中心化的应用程序。
下一篇
无影云桌面