浅析EOS区块链柚子钱包前端插件scatter开发(分享)
之前的文章《一招教你使用Node.js中iis部署运行node(附代码)》中,给大家介绍怎么使用iis部署运行node。下面本篇文章给大家了解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但是对于前端而言,以上足够开发一个线上赌博游戏了。
至于说发代币啊,部署合约,抵押,竞拍,出售,购买,新建帐号这些都用不着,可以转给后端。
【完】
推荐学习:JS视频教程
以上就是浅析EOS区块链柚子钱包前端插件scatter开发(分享)的详细内容,更多请关注其它相关文章!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 浅析EOS区块链柚子钱包前端插件scatter开发(分享)
本文地址: https://pptw.com/jishu/592271.html
