以太坊之dapp

简介: 以太坊之dapp

此处是上篇文中的完整以太坊智能合约
pragma solidity >=0.4.22<0.8.0;
contract Voting{

bytes32[] public candidateList;
mapping(bytes32 => uint8) public votesRece;
constructor(bytes32[] memory candidateListName) public{
    candidateList = candidateListName;
}

//检查候选人

function hefacandidate(bytes32 candidateName) internal view returns (bool){
    for(uint8 i =0;i<candidateList.length;i++){
        if(candidateName ==candidateList[i]){
            return true;
        }
    }
    return false;
}

function voteForCandidate (bytes32 candidateName)public{
    require (hefacandidate(candidateName));
    votesRece[candidateName] +=1;
}
function LookForCandidate (bytes32 candidateName) view public returns(uint8){
    require (hefacandidate(candidateName));
    return votesRece[candidateName];
}

}

相关文章
|
前端开发 安全 JavaScript
|
JSON JavaScript 前端开发
以太坊 – 部署智能合约到Ganache
将编译好的智能合约部署到本地的Ganache区块链网络。步骤如下:更新项目的配置文件,修改网络配置连接到本地区块链网络(Ganache)。创建迁移脚本,告诉Truffle如何部署智能合约。运行新创建的迁移脚本,部署智能合约。...
1824 0
以太坊 – 部署智能合约到Ganache
|
存储 运维 算法
如何开发DAPP去中心化应用,智能合约定制系统开发
DAPP软件系统开发方案,DAPP系统开发内容
222 0
如何开发DAPP去中心化应用,智能合约定制系统开发
|
新零售 Web App开发 区块链
以太坊(ethereum)技术开发相关资料
收集所有以太坊(ethereum)技术开发相关资料 INTRO 介绍 Started 入门 区块链技术指南 区块链领域比较系统的入门资料 什么是以太坊?什么是智能合约?以太坊智能合约入门概念 理...
3416 0
|
存储 区块链 编译器
以太坊智能合约简介(Solidity)
本文略过了冗杂介绍,直接下沉到代码示例。本文中包含一个存储实例和生成极简单 subcurrency 的实例
|
前端开发 JavaScript 区块链
以太坊智能合约开发入门
以太坊合约就是以太坊区块链特定账户地址上的一串代码(functions)和数据(state)。合约账户不仅可以相互间通讯,还可以执行几乎所有的图灵完备计算。以太坊区块链上的合约代码是特定的二进制形式,被称作以太坊虚拟机(EVM)二进制代码。本文以最受欢迎的Solidity为例说明以太坊开发如何入门。
5594 0
|
JavaScript 测试技术 区块链
使用truffle部署以太坊智能合约到区块链
truffle是以太坊(ethereum)开发智能合约(smart contract)过程中最受欢迎的框架,本教程来安装构建一个基本的Truffle项目并部署一个智能合约到区块链。
2223 0
|
移动开发 前端开发 JavaScript
开发基于以太坊智能合约的DApp
最近要找个H5的前端写个简单的DApp,聊过几个H5的工程师,都被跟以太坊交互的部分吓住了。虽然网上有N多的教程,但是对于H5工程师来说,还是有些困难。分析其原因,在于不了解ganache-cli(原来叫testrpc)/web3/以太坊节点/metamask之间的架构关系。
1593 0