• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > 浅析EOS区块链柚子钱包前端插件scatter开发

浅析EOS区块链柚子钱包前端插件scatter开发

作者:站长图库 字体:[增加 减小] 来源:互联网 时间:2022-04-29

站长图库向大家介绍了EOS区块链,柚子钱包,前端插件,scatter开发等相关知识,希望对您有所帮助

本篇文章给大家了解EOS区块链柚子钱包前端插件scatter开发,伙伴们来看看一下。


浅析EOS区块链柚子钱包前端插件scatter开发


基于区块链柚子(EOS)钱包前端插件scatter安装和使用

安装和使用

npm i scatterjs-core scatterjs-plugin-eosjs eosjs -D //main.jsimport ScatterJS from "scatterjs-core";import ScatterEOS from "scatterjs-plugin-eosjs";import Eos from "eosjs";ScatterJS.plugins(new ScatterEOS());


网络链

// EOS公链(正式环境)let main = {  protocol: "https",  blockchain: "eos",  host: "nodes.get-scatter.com",  port: 443,  chainId: "aca376f206b8fc25a6ed44dbdc66547c36c6c33e3a119ffbeaef943642f0e906",}; // 测试链 (就是用来测试的)let jungle2 = {  protocol: "http",  blockchain: "eos",  host: "jungle2.cryptolions.io",  port: 80,  chainId: "e70aaab8997e1dfce58fbfac80cbbb8fecec7b99cf982a9444273cbc64c41473",};


调试和配置

翻墙下载scatter插件安装。

1、打开scatter---setting--network---新建把jungle2的信息填到对应的位置,(取名随便取,jungle2)--保存

2、生成秘钥对,一键生成私钥和公钥

生成秘钥对的地址 https://eostea.github.io/eos-generate-key/

3、新建测试账号,需要填入刚才的公钥,账号名是z-a,1-5长度 12 位组合

新建测试账号的地址 https://monitor.jungletestnet.io/#account 

4、充值,账号建立成功之后莫有钱, 可以先充值 100 块。测试的时候省着点用

充值的地址 http://monitor.jungletestnet.io/#faucet 

5、测试链上的账号建好之后,打开scatter---身份---新建,选择刚才建立的network => jungle2,然后选择对应的账号。点导入---保存

这样scatter插件配置完毕。可以愉快的开发了。


创建scatter

ScatterJS.scatter.connect("app").then((connected) => {  if (!connected) return false;  let scatter = ScatterJS.scatter; //这里就是  window.ScatterJS = null;  window.scatter = null;  //通过两种方式拿到eos 对象  // this.eos = Eos({ httpEndpoint: '', signatureProvider: ScatterJS.scatter.eosHook(jungle2) });  this.eos = scatter.eos(jungle2, Eos, { expireInSeconds: 60 });  //如果授权成功,则可以拿到用户相关信息  if (scatter.identity) {    this.account = scatter.identity.accounts.find(      (x) => x.blockchain === "eos"    );  }});


授权和取消授权

//授权const requiredFields = { accounts: [jungle2] }; scatter  .getIdentity(requiredFields)  .then(() => {    //分别拿到用户信息 和 eos 对象    this.account = scatter.identity.accounts.find(      (x) => x.blockchain === "eos"    );    this.eos = scatter.eos(jungle2, Eos, { expireInSeconds: 60 }, "https");  })  .catch((res) => {}); //退出scatter.forgetIdentity().then((id) => {  this.account = null;  this.eos = null;});


转账交易部分

//取币种相关信息let config = {  account: "xxx", //账号名称  code: "eosio.token", //合约名称  symbol: "ETH", //币种};eos.getCurrencyBalance(config).then((e) => {  console.log(e);}); //取用户相关信息eos.getAccount({ account_name: "xxx" }).then((res) => {  // console.log(res)  let totoal = res.core_liquid_balance; //余额  let cpu = res.cpu_limit; //CPU  let net = res.net_limit; //NET}); //发起转账// eos.transfer('发送方帐号', '接收方帐号', '0.3000 DEV','memo', options, callback) eos  .transfer(account.name, user, `${coin} EOS`, memo, transactionOptions)  .then((trx) => {    // That's it!    console.log(`Transaction ID: ${trx.transaction_id}`);    //有transaction_id 就代表转账成功了  })  .catch((res) => {}); //还可以使用对象eos.transfer({  from: "发送方帐号",  to: "接收方帐号",  quantity: "0.1000 DEV",  memo: "备注",  callback,});


交互部分

// 获取Table行数据eosjs.getTableRows({"scope":'合约名字', "code":'合约名字', "table":"game", "json": true},callback) //执行合约上的函数 eos.contract("合约名字").then(actions => {//actions随便起的变量名actions.test('hello', {    //test是方法名, 'hello'是该actions合约test方法的参数    authorization: [{actor:'lilei'}]    //lilei是建立该合约的用户}).then(result => {    console.log(result);});

当然EOS的API 非常多地址:https://developers.eos.io/eosio-nodeos/v1.6.0/reference#get_block  但是对于前端而言,以上足够开发一个线上游戏了。

至于说发代币啊,部署合约,抵押,竞拍,出售,购买,新建帐号这些都用不着,可以转给后端。



分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 浅析EOS区块链柚子钱包前端插件scatter开发

相关文章

  • 2022-04-2910个值得收藏的CSS实用小技巧
  • 2022-04-29php如何修改上传图片大小
  • 2022-04-29Illustrator设计个性时尚风格的名片教程
  • 2022-04-29CSS如何实现元素不随滚动条滚动
  • 2022-04-29PHP中连接符大于号、等号大于号的意思
  • 2022-04-29Photoshop绘制超强质感立体按钮
  • 2022-04-29干货分享:CSS 9种方法实现不定宽高的垂直水平居中
  • 2022-04-29Phpcms V9内容编辑器支持JavaScript的设置方法
  • 2022-04-29css3怎么设置元素背面不可见
  • 2022-04-29Photoshop制作立体效果的像素艺术字

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • 玩转PHP之快速生成二维码
    • Photoshop制作创意文字标志
    • 如何修改mysql的默认时区
    • ThinkPHP框架SQL操作链式写法原理
    • PHP开发微信授权登录教程
    • 帝国CMS后台搜索报错Illegal mix of collations for operation 'like'
    • PS鼠绘精致开关按钮
    • JAVA微信公众号开发TOKEN验证失败怎么办?
    • Photoshop制作简洁时尚的形象主页
    • PHP怎么实现正则去掉空格

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有