探究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>

)
}
相关文章
|
7月前
|
存储 算法 安全
DAPP互助公排系统开发源码|DAPP互助系统开发方案与指南
“去中心化”是区块链的典型特征之一,其使用分布式储存与算力
|
8月前
|
数据管理 区块链
DAPP智能合约/泰山众筹/互助公排模式系统开发合约源代码详情
def tfs(contract, token_name, user_address, amount): # 检查用户是否有足够的代币 balance = contract.functions.balanceOf(token_name, user_address).call()
|
9月前
|
存储 开发框架 前端开发
BSC链Defiswap丨IPPswap丨NFTswap丨OMNIswap智能合约去中心化项目系统开发成熟技术/项目案例/源码说明
  区块链是一个分布式账本,使用密码学原理来记录数据,并且按照时间顺序进行记录。在区块链中,数据可以进行高度地分散,因为数据分布在不同的节点上。当一个区块链被添加到一个新的区块上时,它将包含以前的所有交易记录。
|
前端开发 JavaScript Java
马蹄链DAPP合约项目系统开发技术方案丨(源码搭建)
马蹄链DAPP合约项目系统开发技术方案丨(源码搭建)
DAPP马蹄链系统开发(方案详解)丨DAPP马蹄链系统开发(源码项目)
  大公排指的是全网排列,小公排指的是单体伞下排列,一条线公排指的是按一条线排列,跳排指的按指定某代数为推荐关系。
|
5G 区块链 调度
DAPP马蹄链Matic智能合约系统开发详细及分析丨Matic马蹄链智能合约开发案例源码版
   5G技术可以为智慧物流提供高速、低延迟的数据传输和通信服务,实现物流的实时监控和管理。例如,在物流配送中,使用5G技术可以实现对货物的实时跟踪和配送调度,提高物流效率和准确性。
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.
|
区块链 C++ 芯片
泰山众筹系统!区块链泰山众筹DAPP模式系统开发流程逻辑分析详情
泰山众筹系统!区块链泰山众筹DAPP模式系统开发流程逻辑分析详情
224 0
|
存储 NoSQL 关系型数据库
佛萨奇2.0开发源码丨佛萨奇2.0波场链+币安链+马蹄链DAPP智能合约系统开发实现技术案例及流程
tx_ids`longtext COLLATE utf8mb4_general_ci COMMENT'区块中交易ID列表',`additional_data`longblob COMMENT'区块产生以后附加的数据',PRIMARY KEY(`block_height`),KEY`idx_hash`(`block_hash`))ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
区块链
深入分析佛萨奇2.0智能合约开发源码技术及流程
by **WeChaT: kaifa873**, which is only for reference of project development requirements!** telegram @ sleu88**
76 0