代码拉取完成,页面将自动刷新
实现用户在有成本制约条件下,整体投票结果对预测事件未来走向具有良好的参考价值。同时采用区块链技术,避免开发人员篡改数据的可能,保证了投票数据安全可靠,增强了平台可信度。
介于国际网络限制,无法直接使用Infura访问以太坊Dapp,因此平台完整体验采用安装MetaMask浏览器插件的解决办法。
//完整代码见 src/Solidity
contract Ballot{
struct Event{
uint ID;//事件ID
address Sponsor;//发起人
string Content;//事件内容
string[] Option;//事件选项
address Reporter;//汇报人
uint StartDate;//开始时间
uint Deadline;//截至时间
address [] Voters;//投票人
uint PrizePool;//奖池
bool Report;//汇报状态 默认为false
uint Result;//事件结果 对应选项索引 默认为99
}
struct Player{
address Uesr;//用户地址
uint Balance;//用户余额
uint[] Created;//已创建ID
uint[] Selected;//已投票ID
uint[] Report;//需汇报ID
mapping(uint=>Option) OptionInfo;//每个已投票事件的选项资金
}
struct Option{
bool Voted;//事件投票状态
uint Time; //投票时间
uint Option;//事件选项
uint Finance;//事件金额
bool Reward;//事件奖励状态
}
struct Finance{
mapping(uint=>uint) Finance;//选项对应金额
}
struct Log{
uint Time;
uint ID;
string action;
int Change;
uint Balance;
}
Event[] Events;//总事件
mapping(uint=>Finance) EventFinance;//事件对应金额
address[] ExistPlayers;//总用户
mapping(address=>Player) Players;//用户对应信息
mapping(address=>Log[]) PlayerLogs;
注意:在VueCli 2.x中公共文件放入static文件夹,而在VueCli 3.x版本中请放入public文件夹,否则axios无法找到文件。该项目采用VueCli 3.x。
npm install
npm run serve
npm run build
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
1. 开源生态
2. 协作、人、软件
3. 评估模型