Jak rozvíjet DApp na VeChain (II): Nastavení a procházka

Synchronizace: Desktop VeChain DApp prostředí.

Nastavení za 3 minuty

Skvělý! Vidím, že jste přežili poslední tutoriál, nyní je čas začít programovat. První věc, kterou potřebujeme, je prostředí Sync.

Dobře teď klonujeme zdrojový kód projektu Sync v terminálu a roztočíme jej v režimu dev:

> dětská hřiště mkdir
> dětská hřiště /
> git clone git@github.com: vechain / thor-sync.electron.git
> cd thor-sync.electron /
> node -v # Ujistěte se, že máte node.js> V10.0.0
> npm install # Závislosti instalace
> npm run dev # Spuštění synchronizace v režimu dev

Když vidíte vyskakovací okno synchronizace elektronů, jsme všichni připraveni!

Boot up: npm run dev

Poke kolem: Znáte Sync

Dobře, teď odložme terminál a zaměřme se více na okno GUI. Sync je peněženka podobná prohlížeči, která je zabudována v knihovně Connex.js a která může nabídnout webové stránce běžící uvnitř ní schopnost komunikace s blockchainem VeChain.

Vytvořte testovací peněženku

Nejprve si vytvoříme testovací peněženku pro sebe:

Přejděte na panel peněženky a zobrazte stávající peněženky.

Skvělé, nyní klikněte na ikonu vpravo nahoře „peněženky“, pokud jste na testovací síti, jsou již k dispozici 3 peněženky pro testování: „Foo“, „Baz“ a „Bar“. Nechte je na pokoji, vytvořme nový kliknutím na tlačítko „Vytvořit“.

Vytvořte novou peněženku pro naše testování
Můžete také importovat svou stávající peněženku Ethereum do Sync a také pomocí generátoru třetí strany vytvořit peněženku, jako je VeChain Address Generator na githubu.

Postupujte podle pokynů na synchronizaci, nyní mám peněženku s veřejnou adresou, v současné době obsahuje 0 VET a 0 VTHO :

0xa7a609b928c4eac077d0e5640f3fa650746c4fcf

Palivujte peněženku pomocí VTHO

Dále doplníme nově vytvořenou peněženku přidáním některých prostředků VTHO. VTHO se používá jako poplatek podporující transakce a na testovací síti. Kde ji získat? Ukázka DApp hlavního týmu VeChain: faucet VET / VTHO!

Pokračujte, navštivte webovou adresu URL: https://faucet.vecha.in v Sync, a uvidíte zajímavou webovou stránku, která rozdává VTHO na testovací síti zdarma:

Získejte zdarma VET / VTHO na testovací síti

Postupujte podle tlačítka „Vyžádat tokeny“ uprostřed webové stránky a získáme zdarma test VET / VTHO pro testování. Nezapomeňte si vybrat peněženku, kterou jste vytvořili, a podle toho zadejte heslo, abyste si mohli tokeny nárokovat. Už jsem si nárokoval 500 VET s 500 VTHO.

Zahrajte si s rozhraními API Connex.js

Nyní, když máme peníze na testovací síť, pojďme prozkoumat funkce blockchainu, které poskytuje Sync, knihovna connectx.js. Otevřeme novou prázdnou kartu a pak přepneme vývojářské nástroje, abychom zjistili, pro co se používá připojení:

Otevřete Nástroje pro vývojáře a navštivte Connex.

Jakmile jste na konzole vývojářských nástrojů (Stejně jako vývojářské nástroje Chrome), zadejte následující kód:

> konex
 {version: "1.2.0", thor: {…}, prodejce: {…}}
thor: {ticker: ƒ, account: ƒ, block: ƒ, ...}
prodejce: {sign: ƒ, own: ƒ}
verze: "1.2.0"
__proto __: Objekt

Ano, každé okno již implantovalo objekt connectx na webové stránce. A tento propojovací objekt může se sítí VeChain dělat spoustu věcí. Prozkoumejme několik jednoduchých:

Hrát s účtem ()

> var acc = connectx.thor.account ('0xa7a609b928c4eac077d0e5640f3fa650746c4fcf')
> acc.get (). then (info => {console.log (info)})
Slibuji {}
{balance: "0x1b1ae4d6e2ef500000", energy: "0x1b1af7398584067000", hasCode: false}
> parseInt ('0x1b1ae4d6e2ef500000')
50000000000000000000000
> parseInt ('0x1b1af7398584067000')
50000517500000000000000

Zde jsem se právě ptal své nově vytvořené peněženky, což má za následek objekt reakce polí „rovnováha“, „energie“ a „hasCode“. „Zůstatek“ je VET na tomto účtu a „energie“ je částka VTHO.

Hrát s tickerem ()

V síti VeChain nevíme přesně, kdy se vyrábí nový blok, ale určitě chceme být upozorněni, kdy bude vyroben. ticker nám dává tuto peek díru, abychom dostali oznámení. Konzolu ladění stále používáme v synchronizaci:

> var t = connectx.thor.ticker ()
nedefinováno
> t.next (). then (() => {console.log ('new block!')})
nový blok!

Super jo? Po asi 3–10 sekundách se tato zpráva „nový blok!“ Vytiskne a víme, že na začátek řetězu je přidán nový blok.

ticker je slib, který není nikdy odmítnut, takže potřebujeme pouze dodat rozhodovací funkci. Už nepotřebujeme funkci setTimeout!

Hrát s hovorem ()

Samotná smlouva VTHO je ve skutečnosti smlouvou kompatibilní s ERC20 / VIP180, která žije na zařízení VeChain! A víš co, náhodou poznám jeho adresu na testovací síti:

0x000000000000000000000000000000456e65726779

Pro ty, kteří nerozumí ERC20 / VIP180, je smlouva dlouhodobým objektem na blockchainu. Myšlení na to jako na soubor programových instrukcí a jednoduché volné formální trvalé úložiště, které jej program řídí. Smlouvy ERC20 / VIP180 jsou jednoduchý program „virtuální banky“, který sleduje každého klienta a jeho zůstatek konkrétní virtuální mince / žetonu.

Máme tedy adresu smlouvy, jak tomu říkáme? Velmi jednoduché.

> const balanceOfABI = {
  'konstanta': pravda,
  'vstupy': [
    {
      'name': '_owner',
      'type': 'address'
    }
  ],
  'name': 'balanceOf',
  'výstupy': [
    {
     'name': 'balance',
     'type': 'uint256'
    }
  ],
  'splatné': nepravdivé,
  'stateMutability': 'view',
  'type': 'function'
}
> const balanceOfMethod = connectx.thor.account ('0x0000000000000000000000000000004545e65726779'). metoda (balanceOfABI)
> const balanceInfo = await balanceOfMethod.call ('0xa7a609b928c4eac077d0e5640f3fa650746c4fcf')
> console.log (balanceInfo)
{data: "0x0000000000000000000000000000000000000000000000001b1b428acf29437000", události: Array (0), převody: Array (0), gasUsed: 870, obrácené: false,…}

Nejprve poskytneme smluvní metodu ABI (funkční podpis) a poté vytvoříme obslužný program s adresou pro nasazení smlouvy. Nakonec zavoláme smluvní metodu s call () a dodáme jí parametr, adresu účtu, který nás zajímá. Skvělý! Teď máme výsledek!

souhrn

Dost na dnešní studium!

Pro shrnutí máme:

  1. Provedli vás instalací synchronizace.
  2. Spusťte příklad DApp v Sync a získejte zdarma VET / VTHO zdarma.
  3. Hrajte se blockchainem VeChain s předem implantovaným javascriptovým objektem connectx.

Od příštího tutoriálu využijeme naše znalosti, které jsme se dnes naučili, a vytvoříme webovou stránku (front-end) existující inteligentní smlouvy, smlouvu VTHO (Ano, nějaký dobrý člověk to pro nás udělal, jednoduše si ji půjčujeme). Buďte připraveni a pojďme!

Všechny epizody tutoriálů:

  • Jak rozvíjet DApp na VeChain (I) : Úvod
  • Jak rozvíjet DApp na VeChain (II): Nastavení a procházka
  • Jak vyvinout DApp na VeChain (III): Komponenty a kódování

Jako moje návody? Čekání na darování pomocí synchronizace kliknutím níže: