Transkripte
1. KURSEINFÜHRUNG: Blockchain ist die treibende
Kraft der nächsten Generation, die auch als Verbbaum bezeichnet
wird. Blockchain erfindet die Art und Weise, wie
Daten gespeichert und verwaltet werden, neu. Der Webbaum umfasst
Dezentralisierung und
wird im Besitz seiner Nutzer gebaut und gehört. Da es viele neue Möglichkeiten für Entwickler wie uns in dieser Dominanz gibt. In diesem Kurs
lernen wir, wie man eine vollständige
dezentrale
Promi-Management-Anwendung von Grund auf neu erstellt Wir werden Solidarität für das intelligente
Vertragsentwicklungsparadigma für Test- und Bereitstellungsteil
durstig uns,
mit dem Vertrag zu kommunizieren, MetaMask, um
die Transaktion zu unterzeichnen, React JS für die Finanzierung und Alchemie ist, dass Blockchain sie zur Verfügung stellen
wird. Am Ende des Kurses werden
Sie die Konzepte verstehen, die erforderlich sind, um sich für eine Stelle zu bewerben oder sogar Ihre
eigene Bewerbung für
die akkadische Blockchain zu erstellen ,
ohne mehr Zeit zu verschwenden. Melden Sie sich jetzt an und
fangen wir an.
2. Erstelle ein neues hardhat: Hallo, willkommen zum
allerersten Video des Kurses,
in dem wir lernen werden, wie man
eine dezentrale
Bibliotheksverwaltungsanwendung erstellt . Also verschwende ich Ihre Zeit nicht zu erklären, was Web Three ist, was Dezentralisierung ist
und so. Wenn Sie möchten, können Sie auf eigene Faust
googeln. Ich gehe einfach statisch zum Kurscurriculum
oder zur Kurs-Roadmap. Der Kurs ist also in D7-Schritte
unterteilt. Der erste Schritt wird darin bestehen, die
Entwicklungsumgebung
einzurichten. Dann werden wir
einen intelligenten Vertrag erstellen. Dann schreiben wir Unit-Test. Dann werden wir
Smart Contract einsetzen. Nach all diesen Tests
sind erfolgreich. Dann werden wir ein Framework,
React Framework, das als
nächste zwei Jahre bekannt ist, verwenden React Framework, das als
nächste zwei Jahre bekannt ist , um ein Frontend
aufzubauen. Und dann werden wir
Ether-Stühle im Front-End verwenden Ether-Stühle im Front-End um mit
dem Smart Contract zu interagieren. Und schließlich werden wir
die gesamte Anwendung testen , ob alles gut
funktioniert oder nicht. Bevor ich
vorankomme, möchte ich nur
sicherstellen, dass Sie
Matter Mask installiert haben und einige wissenschaftliche
Testinteressen in Ihrem Konto haben. Ich werde mich nicht wieder mit
einrichten. Bitte schauen Sie sich ein Tutorial an und fahren Sie
mit dem Kurs fort. Es wird kaum
fünf Minuten Tech machen, das war's. Bevor Sie
an der Anwendung arbeiten, sollten
Sie diesen Tech-Stack zumindest
kennen. Offensichtlich verwenden wir
eine Titan-Blockchain. Und Solidität ist diese
Programmiersprache um intelligente Verträge zu schreiben. Dann verwenden wir Hard-Hat
als Bereitstellungstool. Dann MetaMask Wallet. Dann ist Alchemie ein Anbieter von
versteckten Knoten. Es sagt Ihnen, dass dies
ein Labor ist , um
mit dem intelligenten Vertrag zu kommunizieren, dann mit HTML, CSS und schließlich React JS, oder Sie
können Next JS sagen. Das war's. Beginnen wir mit der
Entwicklungsumgebung. Erstellen Sie zuerst einen Ordner. Name ist Bibliotheksmanagement. Das okay, wenn du willst, kannst
du es irgendetwas nennen und dann ein Terminal darin anhängen. Um Hearted zu installieren, müssen
Sie zuerst ein NPM-Paket
erstellen indem Sie den
Befehl und die VM darin ausführen. Warum? Es wird
ein leeres NPM-Paket initialisiert. Das war's. Sie können also sehen, dass diese
paket.json-Datei da ist. Dann stylen Hardhead. Dieser Befehl ist npm. Installieren, Dash, Dash, Speichern,
Tab, Schutzhelm, und drücken Sie die Eingabetaste. Okay. Die Hardhead-Pakete sind die schwierigere Abhängigkeit
wird installiert. Um kein Hardhat-Projekt zu erstellen, verwenden
wir diesen Befehl
, der uns eine
minimale Struktur gibt
, also NP-Schutzhelm. Drücken Sie dann Enter. Wählen Sie dann das
erste aus, das ein B6-Beispielprojekt
erstellt,
und drücken Sie erneut die Eingabetaste,
dann erneut die Eingabetaste und dann die Eingabetaste. Das war's. Jetzt werden nur wenige Ordner und
Dateien erstellt. Das Beispielprojekt
wird Sie auffordern, hart zu installieren, angeführt von einem voll
härteren Terroristen und wenigen anderen Abhängigkeiten
, die Hardhead
kompatibel mit
Test machen , fehlschlagen und es hat Berühmtheit, einfach zu kopieren diese Zeile und füge
sie ein und drücke die Eingabetaste. Es wird alle für
das Projekt
erforderlichen Abhängigkeiten herunterladen . Okay. Lassen Sie Abhängigkeiten, die ich
erfolgreich installiert habe. Hängen Sie jetzt einfach den VS-Code Editor und hängen Sie Ihren
Projektordner darin an. Dies sind die Dummy-Dateien
, die uns Hardhead zur Verfügung stellen. Im nächsten Video werden
wir Alchemie- und
Meta-Maskenschlüssel in die Bereitstellung
der Hardhead-Konfiguration aufnehmen . Danke.
3. Alchemie und Metamask: Hi. Ein Schutzhelm gibt uns also
ein paar Ordner und Dateien. Wir werden all
diese Schritt für Schritt verstehen. Aber zuerst gehen wir zur
hartköpfigen Konfliktpunkt-JS-Datei. Und stellen Sie sicher, dass wir
unser Netzwerk darauf hinweisen , das
Itanium-Testnetzwerk zu korrelieren. Und damit das funktioniert, brauchen
wir eine frühe
Itanium-Knoten-URL und eine Wallet-Adresse. Vr verwendet lockig und raubt Stone oder
irgendein anderes
nicht , weil
diese Netzwerke in Alchemy abgeschrieben
werden. Also richtig, nicht die
beste Wahl
wäre , das kaudale Netzwerk zu nutzen. Da ich bereits ein
Konto in Alchemy
habe, erstelle ich
kein neues Konto, sondern gehe einfach zu alchemy.com. Und ich klicke auf Login. Du musst dich selbst registrieren. Es ist sehr einfach. Verbinden Sie einfach Ihr
Google-Konto und alles. Nichts Ausgefallenes. Und dann, nachdem Sie ein neues
Konto in Alchemie erstellt
haben, werden Sie zu
diesem Dashboard-Bildschirm weitergeleitet. Klicken Sie hier einfach auf die Schaltfläche „App
erstellen“. Und jetzt füllen wir
diese Informationen auf. Mein App-Name lautet
Bibliotheksverwaltung, Tab. Dann wird die Kette Langeweile haben, aber das Netzwerk wird göttlich sein. Und wie gesagt, wird dies
abgeschrieben, abgeschrieben. Es ist also besser,
nur ein kaltes Netzwerk zu verwenden und
dann auf App erstellen zu klicken. Sie haben also erfolgreich eine App in der Alchemie
erstellt. Der nächste Schritt besteht darin, den privaten
Schlüssel von MetaMask zu erhalten. Sie können Meta-Maske installieren, indem Sie auf
Ihrer Website zu Madame Maskottchen
gehen und die
Erweiterung für Ihren Browser installieren. Da ich es bereits habe, können
Sie das Video einfach anhalten
und sich die Einrichtung
einer neuen Brieftasche ansehen und wie Sie
Testesser in Ihr Konto bringen. Denn um es
zum Laufen zu bringen, müssen
Sie unbedingt einen Test machen. Ein Test wie dieser. Das ist mein Portemonnaie. Und logge dich einfach ein. Dann siehst du, ich habe so viel auf dem Test. Esser und sorge dafür, dass du albern bist. Sie wählen das Netzwerk
mündlich aus den Optionen aus. Um den privaten Schlüssel zu erhalten, müssen
Sie dann auf Kontodetails klicken, privaten Schlüssel
exportieren und
Ihr Passwort eingeben. Das war's. Dann
bekommst du deinen privaten Schlüssel. Und das, diese 0 x a d, Dieses Ding ist dein öffentlicher Schlüssel
, der momentan nicht benötigt wird, aber zumindest solltest du es wissen. Jetzt müssen Sie
ein paar Abhängigkeiten installieren , um diese Schlüssel zu
schreiben. Weil wir
Alchemie-URL und MetaMask Private Key
in unsere Hardhead-Konfiguration schreiben Alchemie-URL und MetaMask Private Key werden. Und dafür
werden wir die Abhängigkeit namens dot ENV installieren und verwenden da es nicht
empfohlen wird,
diese sensiblen Informationen
direkt in unserem Code zu übergeben . Hängen Sie also einfach Ihr
Terminal an und schreiben Sie npm install dot ENV. Aber auch ich installiere von Penn Zeplin hängt ein Flugzeug an,
heißt eine Bibliothek von modularen,
wiederverwendbaren, intelligenten Verträgen, die solide
zurückkommen. Es ist also einfach vorgeschriebener Code , den Sie
direkt verwenden können. Sonst nichts. Ich werde einfach schreiben npm install a Direct Append Zeplin
Slash Contracts und dann Raum D, O, D E und V dot ENV. Dies ist eine andere Abhängigkeit. Das bedeutet, dass es
zwei Abhängigkeiten gibt. Und dann drücken wir einfach die Eingabetaste. Also ist es fertig. Jetzt. Benutze zuerst diesen Punkt ENV. Ich erstelle eine neue Datei
im Stammverzeichnis unter
dem Namen dot ENV. Das ist so. Sie können sehen, dass es sich
im Stammverzeichnis befindet. Und dann werde ich hier einen sehr gut
erstellen. Oder Sie können etwas sagen
, das den Wert speichert. Alchemie-URL ist gleich dieser, und lass g ist gleich diesem. Denken Sie daran, dass es noch
nichts gibt, was
Kohlebergwerk noch
direkt ist . Ich schreibe es. Um nun die Alchemie-URL zu erhalten, gehen
Sie einfach zu Ihrer App
und klicken Sie auf Ansichtstaste. Dann sehen Sie, dass dieses
HTTP-Cookie einfach kopiert wird und es so in Ihre
Alchemie-URL einfügen. Und um den privaten
Schlüssel
der Brieftasche zu erhalten , fügen Sie die Methodenmaske an. Dann hier die Kontodaten, exportieren Sie den privaten Schlüssel und das
gültige Passwort von Dario und bestätigen Sie. Kopieren Sie diesen Schlüssel und fügen Sie ihn hier in den
violetten privaten Schlüssel ein. Das war's. Speichern Sie es und schließen Sie es. Jetzt wollen wir diesen Schlüssel in
unserer Hardhead-Konfiguration. Dafür wurde gerade eine
hartköpfige Konfigurationsdatei geöffnet. Und innerhalb der Module
oder im Export, oder? Netzwerke, dann geschweifte Klammern. Dann verwende ich, wie der
Netzwerkname, Girly. Dann wieder geschweifte Klammern. Dann ist eine Eigenschaft URL, die wir diese
Punkt-ENV-Dateidaten verwenden. Wir müssen
Prozesspunkt-ENV-Alchemie-URL schreiben. Und damit es ganz
oben funktioniert, müssen
wir das erste Paket
des Punkt-ENV-Pakets benötigen. Das ist Dot ENV Dot
Config wie diese. Auf diese Weise können wir auf
die Punkt-ENV-Datei zugreifen. Und dann wird die URL angegeben. Und den zweiten Parameter
müssen wir diese Konten senden. Es ist in der NA, wir müssen einfach Prozess Punkt ENV,
Dot Wallet, Private
Key
schreiben . Das war's. Das war's für die
Hardhead-Dosenfertigation. Jetzt weist unser Projekt auf das
Alchemie-Korrelierungs-Schreibtisch-Netzwerk hin. Im nächsten Video werden
wir an der
Vertragserstellung arbeiten. Danke.
4. Erstellen von Library: Jetzt ist es an der Zeit,
an unserem Smart Contract zu arbeiten. Erstellen Sie eine neue Datei im Ordner „
Contracts“ und nennen Sie sie Library dot Soul. Dann
müssen wir zuerst einen Vertrag
tun, Delta-Lizenz und
Umleitung von solidem,
solidem DVR unter Verwendung des richtigen
Vertrags und des Vertragsnamens. Wir geben dem
Vertrag mit der Bezeichnung Bibliothek. Jetzt bin ich Wesley Library
wird Bücher haben. Das erste, was wir tun werden,
ist eine Buchstruktur zu erstellen. Das heißt, ein Buch wird einige Ideen
haben, solchen Namen. Schreib einfach ein Buch. Dann. Es wird einen Buchausweis haben. Dann der Buchname. Dann ja, veröffentliche. Wer ist dann der Arthur? Und schließlich, ob wir dieses Buch fertig gelesen
haben oder nicht, denn
dieses
Konzept wird darin bestehen, dass
wir eine eigene
Bibliothek haben werden , in der wir schreiben können. Dieses Buch ist noch zu lesen. Ich habe
dieses Buch schon so gelesen. Die Struktur ist also fertig. Jetzt erstelle ich eine
Variable von Buchlisten, die eine
Liste des Buchtyps sein wird. Das heißt, es wird
die Buchstruktur enthalten. Es wird ein Privat sein und ich
nenne es einfach Sänger. Dann ordnen wir diese Buch-ID
der Wallet-Adresse
des Benutzers zu , der dieses Buch
hinzufügt. Damit wir später das Buch der Benutzer
ohne Probleme direkt
abrufen können . Also
schreibe ich einfach Mapping. Dann
werden Sie am Ende 56 der Adresse zugeordnet, und es wird einfach an den Eigentümer
gebucht. Auch hier sage ich, dass
es sich um eine Zuordnung der Buch-ID zur
Wallet-Adresse des Besitzers handelt. Das war's. Dann
wird die erste Funktion, die wir erstellen, darin, ein Buch hinzuzufügen. Also füge einfach Masse hinzu. Dann wird diese Funktion eine externe Funktion
sein. Es wird sich von außen erinnern. Und es akzeptiert einige
Werte wie String mammary name you in 16 Jahren. Dann String Brustarterie. Dann ein boolescher Wert von fertig. Diese Dinge wird es akzeptieren. Um nun ein Buch hinzuzufügen, müssen
wir eine Buch-ID
haben, die eindeutig sein sollte. Der Dienst verwendet derzeit einfach
keine externe
Abhängigkeit. Ich gebe der ID einfach die
Länge unserer Broschüren. Das ist das hier. Da
es offensichtlich
nach dem Hinzufügen eines Buches immer wieder inkrementiert wird. Das wird also immer einzigartig sein. Es nimmt an, das erste Ding, wir fangen bei 0 an, dann wird die
Buch-ID 0 sein, dann eins, dann zwei wie diese. Dann werden
wir in der Buchliste den Wert
der Struktur erhöhen. Das heißt, das
Strukturbuch wird es vorantreiben. Und das erste, was es
braucht, ist ein Buchausweis. Dann nenne das hier. Dann ist es so fertig. Also das werden wir drin drängen. So wird die Länge
automatisch von 0 auf eins erhöht. Dann mache
ich im Mapping auch die Zuordnung des Buches. Id gehört so zum
Absender der Nachricht. Dieses Buch gehört also
dazu, demjenigen, der
diese Funktion aufruft. Und am Ende möchte
ich eine Veranstaltung ausstrahlen. Die Veranstaltung wird ein Buch
hinzugefügt. Einfach. Es wird nach Empfänger,
Empfänger und Buch-ID gefragt . Das wird also einfach in dieser Blockchain
eingeloggt. Irgendwann können wir es
lesen, sind Informationen. Sieh es einfach
als Login-Funktion an. Buchveranstaltung hinzufügen. Der Empfänger Absender der
Nachricht und die
Buch-ID ist die Buch-ID. Ich hoffe also, Sie haben verstanden, dass
dies ein sehr grundlegender Code ist. Wenn Sie aus einer
anderen Programmiersprache kommen, verstehen
Sie das Konzept. Offensichtlich sind diese Dinge
etwas Neues. Wenn Sie immer noch Zweifel haben, können
Sie einfach über
Mapping und Ereignisse lesen. Und im nächsten Video werden
wir an
anderen Funktionalitäten
in unserem Smart Contract arbeiten . Danke.
5. Funktionalität zum Abholen von Büchern: Lassen Sie uns nun an
der Funktionalität arbeiten,
um alle Bücher
dieses bestimmten Benutzers zu erhalten. Also würde ich es nennen, einfach eine Buchliste holen. Es wird eine private Funktion sein. Ich sage dir warum. Es gibt Ihnen nur die Information, dass ich das Schlüsselwort view
verwende, und es wird dieses
Zeug-Buch zurückgeben, das so ist. Vielleicht denken Sie darüber nach,
warum das privat ist, weil ich nur Argumente wie
Boolean beendet
übergeben möchte . Das
heißt, ob wir danach fragen, ob wir nach den Büchern fragen, die fertig sind
oder die wir nicht gelesen haben. Mit dieser einen Funktion können wir also zwei Funktionalitäten
aufrufen oder implementieren. Fangen wir an zu arbeiten. Du wirst alles verstehen. Okay? Funktion, die es falsch
buchstabiert. Okay? Jetzt würde ich
als erstes eine Variable erstellen, sie benennen. Dann wird es eine
neue Liste von Büchern geben. Und dieses Land wäre Sänger, dunkles Land wie dieses. Okay, jetzt werden
wir zuerst zählen, wie viele
Bücher dieser Benutzer hat. Denn in dieser Buchliste
wird es viele Bücher verschiedener,
unterschiedlicher Benutzer geben. Das erste, was wir durch diese
Liste
iterieren oder durchlaufen müssen, um den Besitzer von zu finden. Definieren Sie also die
Bücher, die sich im Besitz dieses Benutzers befinden. Steht dafür. Erstellen Sie einfach eine for-Schleife. Es wird sein, wenn ich gleich 0 bin. Ich bin weniger als Buchliste, Buchliste, Land I
plus plus, so. Dann müssen wir zuerst prüfen, ob Buchbesitzer, diese Buch-ID zu diesem Nachrichtenpunkt-Absender
gehört oder nicht. Das ist es. Da wir wissen, beginnt die
Buch-ID bei 0. Und deshalb haben wir das ab 0
angefangen. Und wir haben gefragt, dass das Mapping mit dieser Adresse
vorhanden ist, also können wir einfach prüfen, ob
es zu diesem Absender gehört. Und eine andere Bedingung,
die wir überprüfen werden, ist die Buchliste. I. Fertig gleich,
gleich fertig. So. Das heißt einfach, was bedeutet, dass dieser
Buchlistenpunkt fertig ist. Das ist diese Eigenschaft. Ob es
der Variablen entspricht, die wir senden,
ist dieser boolesche Wert, ob sie gleich ist oder nicht. Wenn es da ist,
fügen Sie in
dieser temporären Variablen einfach an dieser Zählerposition diesen Wert
ein, einfach an dieser Zählerposition diesen Wert
ein, der Buchwert ist. Dann inkrementiere diesen
Zähler so. Okay? Jetzt haben wir zweifellos alle Bücher, die dem Benutzer
gehören ,
in dieser Variablen, aber diese Länge ist größer
definiert, die gesamte Buchliste. Es könnte ein 100 sein. Und nur fünf Bücher
werden da sein. Um nur etwas
Speicher und Speicherplatz zu sparen. Es wird eine andere Variable erstellen. Das heißt, all dies sind temporäre Variablen
, die das Endergebnis sind. Und das wird es wieder sein. Ein neuer Bereich von Büchern, aber diesmal zählte
die Länge dieses tatsächliche Land. Und ich werde die
for-Schleife verwenden, um einfach alle Daten aus
diesen beiden verschiedenen Daten
abzurufen. Jetzt wieder benutzt new
int I ist gleich 0. Ich widerspreche weniger als ich plus plus. Hier einfach im
Ergebnis-Array. Kopieren Sie alles aus
diesem temporären Array. Das war's. Es ist einfach zu kopieren. Und schließlich kehrte er zurück. Das ist so. Also noch einmal
möchte ich zuerst erklären, dies eine private Funktion ist,
die nur ansieht. Es macht nichts
in der Blockchain. In dieser Funktion
senden wir einen Parameter
namens finished
, also ob wahr oder
falsch. Also schicken wir es. Dann. Als erstes haben wir
eine Variable mit dem
Namen temporär erstellt . Es ist ein leeres Array. Damit ist die Größe des Arrays,
die der Größe
des Booklets entspricht, stabil. Angenommen, es könnte 500 sein. Dann haben wir diesen
Zähler erstellt, der bei 0 beginnt. Und denk einfach drüber nach. Wie viele Bücher
gehören dem Benutzer? Wenn es im Besitz ist und es
wird implementiert. Und wie ich weiß, beginne es bei 0, deshalb schicke
ich es in der temporären Zeit einfach an
die 0 Position. Oder wie wir einen Wert darin
senden werden. Wenn du willst, kannst
du auch das
Temporäre zurückgeben, aber die Länge ist sehr viel Schwein. Um es zu entfernen, habe ich gerade
ein neues Array mit
dieser Zählerlänge erstellt ein neues Array mit
dieser Zählerlänge , also zum Beispiel zehn und
Stunden. Und kopieren Sie einfach alles
aus temporären zwei Tagen,
Ergebnis, Variable und
geben Sie das Ergebnis zurück. Nun, der Zweck, es privat zu
machen bestand darin, diese beiden zu verwenden, weil
wir erstellen, um zu funktionieren. Zuerst wird
der Funktionsname beendet. Bücher. externe Ansicht gibt den Buchspeicher zurück. Und es wird einfach
diese Funktion zurückgeben, die
Buchliste mit dem fertigen
Wert erhält , auf „true“. Und eine andere Funktion,
die wir erstellen und benennen
werden, fertig werden. Bücher. externe Ansicht gibt ein Array von
Bücherstruktur zurück. Und es wird
dasselbe zurückgeben, das heißt, Buchliste
abrufen, aber
definitiv Wert mit false. Mit dieser einen Funktion können
wir also zwei weitere Funktionen schreiben oder
wir müssen Wunsch schreiben, wir müssen möglicherweise
getrennt, getrennt schreiben. Es wird wieder sein, dass der Code
wiederholt wird und alles. Es ist also sehr einfach. Sie werden es
Schritt für Schritt verstehen oder pausieren Sie bitte das Video und versuchen Sie,
die Logik dahinter zu verstehen. Nun, die letzte
Funktionalität, die wir benötigen, besteht
darin , diesen fertigen
Wert von false festzulegen. Das heißt, von wahr
zu falsch und alles. Denn wenn sie das Buch lesen
verwenden, möchte
er es vielleicht aktualisieren. Also schreibe einfach Funktion. Bestraft. Dann wird es eine externe Funktion
sein. Jetzt fragt diese Funktion nach dieser Buch-ID und
einem booleschen Wert. Fertig. Als erstes prüfen wir, ob der Benutzer
Eigentümer dieses Buches ist oder nicht, da er nur seine eigenen Bücher lesen
oder sehen kann. Gehört diese Buch-ID
zum Absender des Nachrichtenpunkts? Dieses Ding wird so
hier sein. Dann buchen Sie einfach die Liste. Buch-ID, Punkt beendet
wird dieser Wert sein. Und danach möchte ich wieder eine Veranstaltung machen. Genau wie das Ereignisset beendet
ist, wird es nach Buch-ID gefragt. Und der boolesche Wert. Hier. Lasst uns das Set fertig ausstrahlen. Und wir senden diese
Buch-ID und den fertigen Wert. Das war's also. Für unsere
Bibliothek Smart Contract. Wir haben alles geschrieben. Im nächsten Video werden
wir einen Unit-Test schreiben , um sicherzustellen,
dass alles ordnungsgemäß funktioniert. Danke.
6. Erstellen einer neuen Testdatei: Hi, willkommen zurück. Da Blockchain unveränderlich ist, wir vor der Bereitstellung
unseres intelligenten Vertrags
Komponententests schreiben, müssen
wir vor der Bereitstellung
unseres intelligenten Vertrags
Komponententests schreiben, um sicherzustellen, dass alle unsere Funktionen und Variablen in unseren Verträgen
ordnungsgemäß funktionieren. Und die
richtigen Werte zurückgeben. Wir werden Mocha
Chai für diesen Zweck verwenden. also in diesem Testordner Erstellen Sie also in diesem Testordner eine neue Datei und
nennen Sie sie Library Dot Test,
sorry, Library Dot js. Nun, lasst uns richtig, das Notwendige sind Importe und all die Bibliothek, die
wir verwenden werden, ist Chai, das ist so, wir müssen schreiben. Und das nächste, was
wir brauchen werden, ist Esser gleich sind
, dass es notwendig ist. Wir haben diese Abhängigkeiten , als wir ein neues
Hardhead-Projekt erstellt haben. Also lasst uns unseren Schreibtisch erstellen. Und wir werden einen
Bibliotheksvertrag schreiben. Dann drin. Ich hoffe, du weißt, wie man Test mit Hard Hat
schreibt. Bevor wir also die
Funktionalitäten und alle ausführen, müssen
wir einige Daten
oder einige Variablen schreiben. Wie vor allem sollten
wir auf jeden Fall unseren
Bibliotheksvertrag haben und so weiter. Schreiben wir diese Variablen. Dann der Eigentümer, der den Vertrag
bereitstellt. Diese zweite Bibliothek, die
Kleinbuchstaben ist, wird wie ein Objekt und eine Überprüfung
unseres Vertrags sein. Und das wird eine
Fabrik sein, kann man sagen. Dann müssen wir zunächst einige
Dummy-Daten zu unserer Bibliothek hinzufügen. Also werden wir einfach schreiben, dass die
Anzahl der fertigen Buch gleich fünf
ist. Nur Dummy-Daten. Und zweitrangig haben wir num, fertiges Buch, Rechtschreibfehler. Wenn Nischenbuch
gleich drei ist. Dann lasst uns die
unvollendete Buchliste und eine weitere fertige Buchliste fertiggestellt haben. Mark II verwendet also Hooks, um die Struktur zu
organisieren. Dieses Desk Cries Keyword
wird verwendet, um
alle unsere Tests zu gruppieren und wir können
als Nest MLL gehen. Wir können es verschachteln. Das heißt, wir
können diesen Graphen wieder schreiben. Auch hier können wir so machen,
damit wir alles verschachteln können. Dann gibt es IT-Koch, es sind die Testfälle und alles
, was wir später verwenden werden. Dann haben wir vor
h, Es ist ein Haken. Das heißt, wir haben das. Wir haben das auch vor
jedem Haken. Es ist also ein Hook,
der vor dem
ganzen Schreiber läuft und er funktioniert. In einfachen Worten, was auch immer Sie vorher in
diesem schreiben, wird ausgeführt, wenn unsere
Testfälle auf
vier separaten Schreibtisch basieren. Okay, jetzt lasst uns vorwärts gehen. Fangen wir mit
vor jedem Haken an. Darin
gewinnen sie eine sinc-Funktion. Jetzt werden wir dieses
Library-Schlüsselwort verwenden, also die Bibliotheksvariable. Und wir werden einfach
schreiben, warten Ether, Dot Get, Vertragsfabrik. Und unser Vertragsname
ist das. Ausarbeitung. Okay, dann werden wir das
haben. Lassen Sie die Bibliothek, auf die
warten wird , den Bibliothekspunkt bereitstellen. Warten Sie noch einmal darauf. Wir müssen nicht direkt schreiben. Wir können jetzt den
Unterzeichner so kriegen. Der Eigentümer ist gleich erwarten. Beginne. Hol Unterzeichner wie diese. Okay. Genau richtig,
ich überprüfe es nur. Ich hab alles.
Alles ist da. Jetzt. Dies ist die Struktur. Das heißt, es wird
eine Liste von Werten haben. Der erste Wert wird
in diese Variable fließen. Dies ist, dies ist die
Bedeutung dieser Aussage. Lassen Sie uns nun diesen
unmöblierten Sänger zu
dieser leeren Liste und dem freundlichsten
Ort dieser leeren Liste initialisieren . Was wir nun tun werden, ist,
dass wir fünf Dummy-Daten in diese unvollendete
Buchliste und drei Dummy-Daten in diese
fertige Buchliste einfügen. Dafür verwende ich eine
for-Schleife, die weit führend ist.
Ich bin gleich 0. Ich bin weniger als die Anzahl des
unvollendeten Buches I plus, plus. So erstelle
ich einfach ein Buchobjekt. Objekt oder du kannst so sagen. Dann wird es einen Namen haben. Es wird Jahr haben. Es wird haben, wird einen Wert von fertig
haben. Das wird falsch sein. Holen Sie sich jetzt zufällige Namenswerte
hier in Arthur, da es
sich durchlaufen wird. Ich erstelle hier eine grundlegende
Zufallsfunktion. So wie das. Funktion. Erhalte eine zufällige Ganzzahl. Jetzt setze ich einfach die
minimalen und maximalen Ziffern und alles und
gebe einfach Math-Punktboden zurück. Dann nicht zufällig. Multiplizieren Sie mit maximalem
Minus Minimum. So wie das. Dies ist eine sehr
grundlegende Taubfunktion. Wenn Sie komplexere Zahlen verwenden
, wenn Sie
komplexere Zahlen wünschen, sollten Sie
einige andere Bibliotheken verwenden. Aber im Moment
wird das diesen Job machen. Dies ist nur ein Testzweck. Ich bekomme einfach eine
zufällige Ganzzahl. Ich brauche, ist es von
eins bis 10 Tausend? Und ich schaffe es einfach, so
eine Zeichenfolge zu machen. Wieder für das Jahr. Es wird alles zwischen
1800 sein, annehmen bis 2022. Dann wäre unsere dritte
nur diese Zufallszahl. Denken Sie daran, das
ist nur zum Testen. Ich möchte ein paar Daten
auf dieser Seite haben. Jetzt, nach diesem Buchobjekt, schreibe
ich einfach „Wait“, „
Bibliothek“, „Punkt“, füge Buch und Buch hinzu. Buch, Punktname,
Buch, Punktohr, Haken Unser drittes Buch ist fertig. Und dann werde ich
diese Informationen ausführlich weitergeben ,
diese unvollendete Liste. Das ist dieser
Buchwert wie dieser. Also einfach, nochmal, bevor h vor
jedem definierten Test läuft, definieren
wir hier die Summe
für den Komponententest. Und vor jedem Test wird
dieser Code ausgeführt. Hier stellen wir zuerst unseren Vertrag bereit und
holen dann die Instanz davon und fügen dann etwas Dummy-Box hinzu. In ähnlicher Weise müssen
wir auch
Daten für dieses
fertige Buch hinzufügen . Nach diesem unvollendeten Buch werden wir
wieder
etwas dasselbe schreiben. Was ich also machen werde, ist, dass ich es
kopiere und hier einfüge. Dann werde ich
zuerst diese Anzahl
fertiggestellten Buches besorgen. Hier. Ich bin gleich 0 weniger als die
Anzahl des fertigen Buches. Andererseits werden dies
die Bücher sein und das hier wird der
Definitionswert wahr sein. Dann schreibe ich
Wait Library Dot, füge Buch hinzu, Buchpunktnamen. Dann werde ich
diese Informationen hier in diese
fertige Buchliste schieben . Das war's. Endlich, jetzt sind wir damit vor jedem Hook
fertig. Im nächsten Video schreiben
wir den Unit-Test, um ein Buch
hinzuzufügen und
alle Bücher zu erhalten. Danke.
7. Einheitstest zum Hinzufügen und Abholen von Büchern: Lassen Sie uns jetzt unseren
ersten Test schreiben, um ein Buch hinzuzufügen. Danach vor jeder Klausel. Lassen Sie uns noch einmal schreiben, die
Gruppe beschreiben und Buch hinzufügen. Dies wird eine Funktion sein. Dann benutze es drin. Das ist das kommt auch
aus der Bibliothek. Dies sind die Testfälle. Der erste Testfall wird, wir sollten uns treffen und eine Veranstaltung buchen. Schreib es einfach auf. Wenn Sie es nicht verstehen, Sie am
Ende des Tests definitiv werden Sie am
Ende des Tests definitiv verstehen, was
diese Linie bedeutet. Lassen Sie uns noch einmal
ein zufälliges Buch erstellen. Dafür. Copy, dieses Buchobjekt. Hier. Alles ist in Ordnung. schreibe
einfach await x wieder rein, sofort
wieder hinein. Bibliothekspunkt, hinzufügen, buchen. Dann schreib diese
Dinge hinein. Kopieren Sie einfach und fügen Sie es ein, wenn Sie möchten. Dann emittiert dies einen
Wert, der emittiert werden soll. Dann unsere Bibliotheksinstanz, das ist eine Vertragsinstanz. Dass es dann
ein Ereignis namens Buch hinzufügen
mit Argumenten
oder NOR Adresse emittiert mit Argumenten . Dann Anzahl und fertiges Buch plus Nummer des fertigen Buches wie dieses. Was meine ich mit diesem Code, da wir am Ende
unserer Werbebuchfunktion in
diesem Bibliotheksvertrag dies
aussenden, oder? Diese Veranstaltung ist also
das, was Empfänger ist
, also wer ist der Besitzer des Buches.
Und dieser Buchausweis. Und da die Buch-ID die
Länge der Buchliste ist. Und in unserem, vor jedem Buch, haben wir bereits diese Anzahl von Büchern, die 53 sind, in die Liste aufgenommen. Diese Zitrone fängt bei 0 an. Mit einfachen Worten, was ich meine ist, dass wir bereits eine Aufgabe haben, die
diese Dummy-Aufgabe in dieser Liste ist. Und dies wird die
neun Aufgabe sein, die wir sind, das sind neun Bücher, die wir hinzufügen, die eine ID Acht haben wird. Dies wird einen Index acht haben , da
der Index in der E-Mail-Liste bei 0 beginnt. Dieses Buch wird also eine ID Acht
haben. Das war's. So. Dieses Buch wird eine ID Acht haben. Wir werden nur prüfen , ob die Veranstaltung diese Informationen
emittiert
oder nicht. Das war's. Und um die Gleichheitsprüfung durchzuführen oder erwarteten Ergebnisse
mit dem tatsächlichen Ergebnis zu
vergleichen , können
wir Chai verwenden, was uns drei
Behauptungen gibt,
das heißt, dass es auch ein Drittel gibt und es
gibt sollte auch, aber wir werden nur erwarten. Jetzt. Dies fügt hinzu, dass ein
Buchtest abgeschlossen ist. Danach werden wir einen weiteren Komponententest
schreiben, bei dem Bücher gekauft werden sollen. Lass es uns schreiben. Es wird wieder eine Funktion sein. Im ersten Testfall sollten
wir wirklich sollten
wir die richtige
Anzahl
zurückgeben , die korrekt ist. Unvollendete Bücher. Es wird eine sinc-Funktion geben. Lasst uns jetzt die Bücher
aus unserem Vertrag holen. Das sind Bücher von Chained. Diese Blockchain wird ein
Library-Instanzpunkt sein. Holen Sie sich ein unfertiges
Buch, das hier ist. Hol dir unvollendete Bücher wie diese. Was wir dann erwarten,
ist, dass
Bücher aus
Kettenpunktlänge zuerst der Anzahl
unvollendeter Bücher
entsprechen sollten . Und was wir dann tun werden ist,
dass wir auch überprüfen werden, dass Bücher in diesem
Array den Büchern
in dieser Buchliste
ihres Vertrags entsprechen . Dafür müssen wir
eine Funktion erstellen, die Bücher
verifiziert und
einfach aufschreibt. Der Code, den ich gerade schreibe. Die erste Funktion wird ein einzelnes Buch
überprüfen, okay? Es wird
Buchkette und Buch brauchen. Wir werden also
erwarten, dass der Buchpunktname gleich dem Blockchain-Punktnamen
ist. Dann werden wir
noch eine andere Erwartung haben. Buch. Punkt ir Punkt zwei
String ist gleich Blockchain-Punkt,
Punkt zu String. Dann erwarten wir ein Buch. Unser dritter sollte gleich sein wie n gleich dem Blockchain-Punkt Arthur. Und jetzt haben wir eine andere Funktion,
überprüfen Sie die Buchliste. Es werden also Bücher aus der
Kette- und Buchliste sein. Erwarten wir zuerst
Bücher von Chain. Die Länge
sollte nicht gleich sein, sie ist nicht gleich. Es ist nicht gleich 0. Dann wird das zweite Mal erwartet, dass die
Kettenlänge der Buchliste Kettenlänge ist Punktlänge der
Buchliste
ist. Da wir dann
viele Bücher haben, das ist
auch in diesem Bereich und in diesem Bereich
werden wir viele Bücher haben. Also müssen wir
jedes Buch durchlaufen und dann nachsehen. Also haben wir, wir werden eine Balkenschleife
haben. Dann. Es beginnt
bei I gleich 0, ich bin weniger als Buchliste
Punktlänge I plus plus. Also schreibe einfach const. Buchkette ist gleich
Büchern aus der Kette. Ich nehme an, 0 Index
zuerst Index wie diesen. Dann wird das Buch eine Buchliste sein, die hier ist, das kein Test ist. Und dann werden wir
dieses überprüfbare verwenden, dass dies ein einzelnes Buch überprüft. In diesem speziellen Buch werden
wir diesen Namen überprüfen oder
ob sowohl der Name als auch der Autor, Eric Color, in der Blockchain und
dem Buch nicht so sind. Wir
vergleichen also einfach Bücher, die in
diesem Vertrag gespeichert sind , und Bücher die in der lokalen
Variablen dieses Tests
gespeichert sind. Das war's. Also nochmal,
geh hier runter. Was ich diese
Verifikationsbuchliste schreiben werde. Dann
schicke ich einfach Bücher von der Kette. Und dann unvollendete Buchliste. Also sollte es
uns auf jeden Fall eine unvollendete
Buchliste aus dieser Kette geben . Und dann unvollendete Buchlisten von hier aus, die in diesem Test enthalten sind. Und in ähnlicher Weise werden wir
eine andere Bedingung haben , um die richtige Anzahl
der fertigen Bücher zu erhalten. Hier. Damit werden wir
das Buch fertigstellen, Bücher. Dann sind Bücher von Jane
gleich der Anzahl der fertiggestellten. Dies werden fertige
Bücher gleich sein. Und dann überprüfe Booklets, das sind Bücher von Jane. Und diese fertigen Buchlisten, ob es gleich ist oder nicht. Das war's also. Wir haben erfolgreich einen
Unit-Test erstellt, um
ein Buch hinzuzufügen und sogar
unsere Bücher abzurufen. Es holt Bücher, die
unvollendet sind, und holt
Bücher ab, die fertig sind. Das war's für dieses Video. Wir sehen uns in der nächsten Sitzung. Danke.
8. Führe die Tests durch.: In diesem Video
werden wir einfach
unseren letzten Testfall schreiben und dann unseren gesamten
Test ausführen und sehen, ob es so ist, ob er
richtig funktioniert oder nicht. Schließlich wird der Test darin bestehen, ein Buch fertig
zu stellen, das ist ein unvollendetes Buch. Lasst es uns auf „Fertig“ ändern. Also lasst uns das nochmal mögen,
dieses Grau. Stellen Sie dann die fertige Funktion ein. diesem Testfall
sollten wir wirklich ein fertiges Ereignis einstellen. Dann schreibe unsere Funktion. Angenommen, lassen Sie uns
diese Buch-ID als 0 nehmen. Das ist das erste Buch. Dann warf ich einen Blick. Buch. Fertig ist gleich wahr. Dann schreibe einfach „warten“, erwarte. Dann
beendete Bibliothekspunktsatz die Funktion. Wir schicken den Buchausweis. Und das ist die Dezimalzahl
, welche Gene zutreffen. Dann wird es emittieren. Es emittiert eine Funktion oder ein
Ereignis, das als set bezeichnet wird. Kapitalisten wurden
mit Argumenten,
Argumenten, Buch-ID und
einem Wert abgeschlossen , der wahr ist. Wenn wir dieses
Set also hier als fertig bezeichnen, können
Sie sehen, dass es ein Ereignis ausstrahlt , das die Buch-ID
und einen fertigen Booleschen Wert hat. Das war's. Davon sprechen
wir hier. Wir werden prüfen, ob
es sich um eine Besprechung handelt oder nicht. Jetzt ist es soweit. Wir führen unseren Test durch. Stellen Sie sicher, dass Sie
alle Ihre Dateien speichern. dann in Ihrem Projektverzeichnis einfach Ihr
Terminal auf und rechts und px,
Hardhat, testen Sie und drücken Sie die Eingabetaste. Denken Sie daran, dass Sie
nach Abschluss des Hinzufügens
oder nach dem Beheben dieses Fehlers jemals einen Fehler
erhalten , verwenden Sie NP x hardhead clean und führen
Sie den Test dann erneut aus. Das wird diesen Test erneut ausführen. Unser Bibliotheksvertrag hasst
einige Probleme aus. Du siehst es. Okay. Lasst uns nachsehen. Wir
haben ein paar Probleme. Ich melde mich mit einer Lösung bei
dir. Also habe ich die Lösung bekommen. Die Fehler, die ich gemacht habe, waren der
erste Fehler , das
heißt, in der vierten Zeile sollte
ich diesen Schutzhelm haben, keine Testbibliothek. Diese Briefe sollten
aus der Howard Head Library stammen. Und ein zweiter Fehler war, dass
diese Erwartung
aus der Kinderbibliothek kommen sollte, aber es sollte kein Kapital sein, es sollte
Kleinbuchstabe sein, der CHA ist, klein. Lasst es uns retten. Und wieder
besorge ich mir ein neues Terminal. Ich werde lesen und
px. Ich hatte sauber gehabt. Dann füge ich hinzu, dass NP
x Test hatte. Mal sehen. Jetzt
funktioniert alles richtig oder nicht. Schließlich können Sie sehen, dass alle
Testfälle angezeigt werden,
okay, das bedeutet, dass
wir bereit sind zu gehen. Im nächsten Modul werden
wir unseren
Smart Contract in
die Blockchain hochladen . Danke.
9. Verfassen des deployment: Hi, willkommen zurück. In diesem Video schreiben wir diese Bereitstellungsskripte
für unseren intelligenten Vertrag. Gehen Sie einfach in den
Script-Ordner und erstellen Sie eine neue Datei mit dem
Namen deploy dot js. Jetzt fangen wir an, daran zu arbeiten. Benötigen wir das Ethers-Paket von der Hardhead-Abhängigkeit. Schreiben Sie jetzt einfach diesen
Code, der für
den Bereitstellungszweck benötigt wird. Zuallererst werden wir eine Vertragsfabrik
schaffen. Und ich erwarte, dass Esser eine Vertragsfabrik
bekommen. Name ist Bibliothek. Erstellen Sie dann eine Instanz, die Kontrakt für Trade Dot
ist. Bereitstellen. Ein Gewichtsvertrag wurde eingesetzt. Wir werden nur warten, bis sicherstellen, dass der Vertrag eingesetzt
wird. Und nach Tag. Danach werden wir die
Protokolldow-Vertragsadresse konsolen, was sehr wichtig ist. Wir werden diese
Vertragsanschrift später im Frontend verwenden. Schreiben Sie einfach eine Vertragsanschrift. Und dann schreiben wir eine
andere Funktion. Um die obige
Funktion so auszuführen. Versuchen Sie es, Block zu fangen. Wir meinen dann verarbeite
den Ausgang 0, wenn
alles in Ordnung ist. Und wenn wir etwas Adder haben, dann lesen Sie
Konsolenpunktprotokoll, vielleicht protokollierter Fehler. Und wir werden
Prozess-Exit schreiben. Eins. Wir können bearbeiten ist
Exit Button Adder. Und schließlich werden wir hier Main schreiben und
laufen, sagen wir mal. Dies ist also das
Bereitstellungsskript. Heb einfach alles auf. Um dann einfach angehängtes
Terminal im Stammordner bereitzustellen. Und tippe einfach NP x ein. Heart hatte Skripte ausgeführt. Stellen Sie dot js bereit. Netzwerk ist göttlich
und drücke Enter. Mal sehen, ob alles in Ordnung ist, dann bekommen wir unsere
Vertragsanschrift. Wie unser Vertrag
erfolgreich eingesetzt wurde. Kopieren Sie einfach diese Adresse und holen Sie sich
einfach ein Komma,
das heißt Command. Und speichern Sie es einfach, damit wir diese Informationen
nicht verlieren. Wenn Sie möchten, können
Sie den Vertrag auch überprüfen. Informationen in. Göttlich. Ethers können einfach auf
diese Website gehen und einfach Ihre
Vertragsadresse
einfügen und einfach suchen. Sehen Sie, wir haben diesen
hochgeladenen
Vertrag vor 52 Sekunden
bereitgestellt. Sie können einfach überprüfen, dass ja, unser Vertrag erfolgreich
eingesetzt
wurde , kein Problem darin. Das war's also für dieses Video. Im nächsten Modul werden wir am
Frontend arbeiten und dann mit unserem
diploiden Vertrag
interagieren. Danke.
10. Arbeiten an Next js Frontend: Hi. In diesem Modul werden wir am Frontend
unserer Anwendung
arbeiten und wir
werden das nächste JS verwenden, das ein Bereich noch Framework ist. jetzt im Projektordner Schreiben Sie jetzt im Projektordner
einfach den Befehl npm. Erstellen Sie, nächste App. Dann werden wir auch die
Lebenden dort benutzen. Schreibe einfach tailwind css und ich nenne es Client
und drücke die Eingabetaste. Es wird eine grundlegende
nächste JS-Anwendung erstellen. Okay, also unsere nächste
Stuhl-Anwendung erfolgreich erstellt. Um
mit unserem bereitgestellten
Smart Contract interagieren zu
können, benötigen wir zwei Dinge. Vertragsanschrift und das ABI. Um den ABI zu erhalten, kopieren Sie einfach
die Bibliothekspunkt-JSON-Datei, die sich in Artefakten und Contracts Ordner und
dann in der Bibliothek befindet. Dann haben wir auch diese
Bibliothekspunkt-JSON-Datei. Dieser Kunde. Und dieser Client erstellt einen
neuen Ordner namens ABI. Neuer Ordner hier, ABI. Und fügen Sie dann in diesen Ordner einfach die JSON-Datei der
Bibliothekspunkte ein. Das heißt, dies ist der ABI, der für die
Aufgabe,
also für diese
Vertragsanschrift, benötigt wird. Erstellen Sie einfach eine neue Datei namens config dot js im
Clientverzeichnis. Direkt
darin erstellen Sie eine neue Datei namens config dot js. Und innen schreibe einfach
Export, Const Task. Oder Sie können einfach
sagen, dass Sie keinen Vertrag abschließen, Sie können einfach einen Vertrag schreiben. Die Adresse ist gleich und kopieren Sie diese
Adresse
direkt hier und speichern Sie sie. Wir werden das später benutzen. Wenn du willst, kannst
du es einfach entfernen. Die Adresse hier. Das war's. Jetzt
werden wir auch einige Abhängigkeiten
für unser nächstes JS-Projekt installieren müssen . Gehen Sie also einfach in das Clientverzeichnis im
Terminal, es ist CD-Client. Und schreibe einfach npm, installiere Esser, tippe gestaltete Komponenten ein
und drücke die Eingabetaste. Esser sind also eine ziemliche Interaktion
mit dem intelligenten Vertrag. Typen werden die Requisiten überprüfen und sehen, was
ich falsch gemacht habe. Ich habe keine Komponenten etwas
ausgebreitet. Kombo. Nance Typen überprüfen, ob die Requisiten an
Ihre Komponenten weitergegeben werden und Ihren Bedingungen entsprechen. Und stellen Sie sicher, dass die Daten, die
Sie erhalten, gültig sind. Vielleicht Typen, bei denen nur sichergestellt
wird dass Daten, die an
die Komponente gesendet werden,
gültig Diese Stilkomponenten
ermöglichen es uns,
Komponenten zu erstellen und
Stile mit ES6-Tag,
Vorlage anzuhängen Literale, die Stile
, die CSS zurückgeben. In einfachen Worten, es ist ein Paket eines Drittanbieters,
mit dem wir
eine Komponente als
JavaScript-Variable erstellen können eine Komponente als
JavaScript-Variable , die bereits mit CSS-Code
gestaltet ist. Du wirst es später verstehen. Also jetzt einfach ausführen, unsere Anwendung ist npm run dev. Okay, jetzt lasst uns
einfach dazu gehen. Es ist lokaler Host und sehen Sie unsere nächste JS-Anwendung
erfolgreich geschrieben wurde. Das war's also. Wieder werde ich was tun? Ich mache das einfach klein. Es ist so. Die Vertragsanschrift,
nur die CamelCase späteren Briefe, die ich mag, gefällt mir so. Das nächste, was wir tun werden,
ist, an der Indexdatei zu arbeiten, die sich innerhalb der Seiten befindet. Hier. Wir haben diese
Indexpunkt-TypeScript-Datei. Und ich werde
alles von
hier entfernen und einfach von Grund auf neu
schreiben. Als erstes werde
ich dich bleiben und Affekt Leute von React benutzen. Dann habe ich eine
Vertragsanschrift. Vertragsadresse
aus der Konfigurationsdatei, die sich außerhalb
dieser befindet, also diese Konfigurationsdatei. Dann importiere ich
Ethers, Ethers Paket. Dann importiere ich unsere ABA, dass diese Bibliothek aus der ABA Slash Library dot json ist. Dann importiere ich die
nächste Seite von der nächsten Seite. Dann werde ich auch
einfach Lead Window deklarieren. So dass
es später keine
Fehler gibt. Das ist großartig. Unsere Komponente, die für
die
Verspätung zu Hause
erforscht wird für
die
Verspätung zu Hause
erforscht . Jetzt haben wir unsere Komponente abgestrahlt, wenn unsere
nächste Anwendung fertig ist. Im nächsten Video werden
wir daran arbeiten, wie
Sie sie
MetaMask Wallet in unserer
Anwendung verbinden können. Danke.
11. Funktionalität zur connet MetaMask: Hi. In diesem Video werden wir
an dieser Funktionalität arbeiten, um unseren Liam zu verbinden gültig es ist die Molmasse
mit unserer Anwendung. Also lasst uns zuerst
an der Funktion arbeiten und sie connect nennen. Oder lassen Sie es. Lasst uns
alles darin einpacken. Versuchen Sie es zu fangen. Block wird einfach
console.log
Adder schreiben console.log , der
sich mit meinem Thermostat verbindet. Und einfach werden wir das
hinzuschreiben. Jetzt bekommen wir zuerst
das Stadionobjekt, das in unseren Browser injiziert
wird. Dann werden wir sehen, ob
wir ein TDM haben oder nicht. Wenn wir kein TDM haben, schreiben
wir einfach console.log. Möglicherweise maskieren Sie nicht
erkannt und kehren zurück. Und wenn wir das getan haben, dann werden wir prüfen, ob es mit dem
richtigen Netzwerk
verbunden ist , also Garlin-Netzwerk oder nicht, werden einfach die Anfrage
für sie bekommen , die bekannt ist als Kettenunterstützung. Und dann wissen wir, dass wir wissen, dass Girly ID 0,
X5 ist , das ist Knorpel und ID. Also werden wir es vergleichen, wenn Shane AD nicht gleich der
Korrelationskette AD entspricht. In diesem Fall
warnen Sie einfach darauf, dass Sie
nicht mit einem Netzwerk verbunden sind nicht mit einem Netzwerk verbunden und einfach von hier zurückgekehrt sind. Und wenn das auch in Ordnung ist, dann wird das einfach gezählt
werden. Dies ist eine Anfrage. Diese Anfrage und wir werden die Bitte
hören, dass mein drittes, das als
Anforderungskonten bezeichnet wird , wie diese. Und dann sollten wir einen
Zustand haben, der hier variabel ist. Ich nenne es Girokonto. Um es zu ändern,
setze ich einfach ein Girokonto ein. Ich hoffe, du weißt, dass du Hook in React
angeben kannst. Bedeutet einfach, dass dies eine
Variable ist und ihr
Anfangswert leer ist. Dies ist eine Funktion, die verwendet
wird , um dieser Variablen einen Wert
zuzuweisen. Das war's. So
kopiere ich diese Funktion, lege sie
dann hierher und
schreibe einfach Konten. Der erste. Genau so haben
wir mehrere
Konten in MetaMask, holen Sie sich
einfach das erste. Dies ist die Funktion, die
die Funktion zum Verbinden von Wallet ist . Lasst uns nun am
HTML-Teil arbeiten. Gib einfach ein div zurück. Geben wir ihm ein paar
Klassennamen von CSS. Flex, Flex nannte Items. Wenn du willst, kannst du einfach
kopieren, was das alles bedeutet. Weil dies ein Rückenwind
CSS-Code ist, F3, F6 für. Dann. Das ist nur ein grundlegendes Styling. Das war's. Sonst nichts. 68508. Hauptsächlich wird Mama in dieser Polsterung unten 20 sein. Dann nimm noch eine Klasse. Hab mir den Klassennamen gegeben. Übergang über Datum. Als es gab. Dann über Skala, wenn 05, Übergang, Dauer 500. Einfach rein, raus. Dann nicht drin. Draußen. Angesichts von H2. Ist das Decks C x fett, und B ist Rand unten. Um eine Marge hinzuzufügen, oben 12. Und nenne es. Verwalten Sie Ihre persönliche Bibliothek. So. Dann kommt jetzt unser
Teil, das heißt, wir werden prüfen, ob das
Girokonto leer ist, dann
haben wir einen Button oder
sonst haben wir etwas anderes. Okay? Mal sehen. Wenn es leer ist, haben wir einen Knopf. Der Name der Schaltfläche lautet connect. Lasst es. Jetzt lasst uns etwas Styling
geben. Der Name der Klasse. Text, Schrift getragen. Indem ich meine drei hinzufüge. Wetten x 12. Hintergrund. Eins, C ,
232, großer Rand, unten. Dann skaliere 105, Übergang. Und im OnClick-Ereignis schreiben
wir einfach
connect, naja IT-Funktion. Wir werden es diesen
n zuweisen , wenn sie bereits
verbunden sind. Dann haben wir ein div-Tag, das dafür
einen Vorteil haben wird. Dann ist
Wallet, Wallet verbunden und
ihre Wallet Adresse dieses Girokonto. Und lassen Sie uns auch
etwas Styling geben. Als Nächstes Excel. An Tag 12, Punkt verwalten. Lasst es uns retten. Ich möchte ein C. hinzufügen Wir haben diese schöne Brieftasche mit vollem
Knopf und Hals. Wenn ich darauf klicke, wird mein MetaMask angezeigt. Und meine Aufgabe ist bereits
mit dem Golgi-Netzwerk verbunden. Ich schreibe einfach als nächstes, verbinde mich und sage,
gut es ist verbunden, das ist meine öffentliche Adresse. Also haben wir erfolgreich Steadies
geschaffen. Wir haben erfolgreich an
der Funktionalität gearbeitet , um
unser My Thomas Wallet mit der Anwendung
zu verbinden . In den kommenden Videos arbeiten
wir am Front-End
und der Funktionalität zum Hinzufügen und Löschen von Büchern
und allem. Das war's also. Wir sehen uns im nächsten Video.
12. Funktionalität, um ein Buch hinzuzufügen: Hi. In diesem Video werden wir an
einer Farm arbeiten, die es dem
Benutzer ermöglicht, ein Buch einzureichen. Und ich sage, wir müssen
eine Funktion schreiben , die diese Informationen
in diese Blockchain
einfügt. So laut, Fangen wir
mit der Funktion an. Damit die Funktion funktioniert. Erstens sollten wir einige Staaten
haben. Es sind einige Variablen. Du kannst Const sagen, Buchname. Lesen Sie also definitiv das
Buch wird einen Namen haben. Und um diese Variable zu aktualisieren, haben
wir diesen festgelegten Buchnamen. Du bist
ganz am Anfang geblieben. Es wird leer sein. Dann werden wir einen Buchautor haben. Und dann wird es eingestellt sein. Buch ist nach Nutzungszustand. Auch hier wird es sein und dann wird
dieses Buch ein Jahr haben. Es ist reiches Ohr
, dieses Buch wurde veröffentlicht. Buchen Sie hier. Sie geben MD an. Und dann werden wir endlich das Buch fertigstellen
lassen. Genau so ist dieses
Buch fertig oder nicht. Das Buch ist fertig. Ganz am Anfang wird
es also nein sein. Wenn wir ein Buch
hinzufügen,
sollte der Standardwert bekannt sein, wenn wir ein Buch hinzufügen. Dann lasst uns an ihrer
Funktion arbeiten und benennen sie. Buch einreichen. Es wird eine sinc-Funktion sein. Dann erstellen wir
das Book-Objekt. Simulieren. Der Schlüssel heißt BlockName. Dann dein Boss. Müssen wir es
nicht in Integer ändern, diese Zeichenfolge. Das ist umso sperriger. Dann haben wir das dritte Buch. Dann haben wir den Wert beendet. Wenn der
Wert des Buchs „Ja“ lautet, dann ist er wahr oder falsch. Sie werden das verstehen,
wovon ich spreche, denn dies ist eine
persönliche Bibliothek. Vielleicht möchten Sie
Ihr Buch einfügen , das
bereits rot ist, aber Sie möchten
es in die Blockchain hinzufügen. Das ist okay. lasst uns den Try-Catch-Block machen. Versuch, Block zu fangen. Wir haben console.log und senden ein neues Buch ein. Und dann schreibe den
Herausgeber, bring Durchfall mit. Und was wir tun werden,
ist, dass wir zuerst
das Stadion aus diesem Fenster holen werden . Wenn wir es dann haben KTM-Objekt, dann schreiben wir const. Der Anbieter ist den Anbietern
neuer Esser gleich. Provider von Web drei. Und wir werden
dieses Itanium-Objekt passieren. Dann kriegen wir den Unterzeichner. Unterzeichner wird Provider Dot sein, Unterzeichner wie folgt
erhalten. Und dann haben wir
eine Vertragsinstanz. Bibliothek. Vertrag ist gleich
dem neuen Vertrag, dieser Vertragsanschrift, dann sollten
wir die ABA, ABA haben, und dann
müssen wir den Unterzeichner geben. Und jetzt müssen wir die
Funktion Buch hinzufügen von ihnen aufrufen. Ähm, Blockchain. Jetzt lassen Sie Bibliotheks-Transaktion gleich auf
Laborvertrag warten. Library Contract Dot Buch hinzufügen. Dies ist
die Rückgabe des intelligenten Vertrags. Wir schicken Buch, Punktname, Buch, dieses Ohrbuch. Unser Buch. So fertig. Und dann werden wir einfach diese Transaktion, also Bibliotheks-Transaktion
,
konsolen . Und wenn es Tanium-Objekt nicht verfügbar
ist
, wird dies nicht der Fall sein. Aber da wir kein
Risiko eingehen, wird
es schreiben, wir
werden es aufschreiben. Check existiert nicht. Das war's also. Dass dies die Funktion
ist, um
ein Buch einzureichen. Wir benennen diese
Funktion einfach Buch einreichen. Jetzt arbeiten wir am
HTML-Teil. Lass uns nach unten gehen. Hier. Das heißt, in dieser
Brieftasche verbunden. Sie möchten, dass das Formular angezeigt wird,
da der
Benutzer es zunächst mit einer Moschee-Wallet verbinden
muss. Darunter werden wir
zuerst haben, was ich tun werde , ist, dieses Ding in ein div zu wickeln. Dave, warte einfach, ich
überlege nur, was getan werden kann? Ja. Gib ihm einfach ein Div. Schließe dieses div. Okay. Jetzt, nachdem diese
Wallet verbunden ist, Dave, schreiben
wir das Formular
, das schnell ist. Neues div. Ich gebe ein paar
Rückenwind, CSS dazu. Diese Dinge werden Text, Schriftart, halb fett sein und Duan De Margin, Top Vier sein. Dann lasst uns
unsere Eingabefelder haben. Die erste Eingabe Text des Eingabetyps, dann
wird der Platzhalter Buchname sein. Und dieser Wert wird die oben erwähnte
Variable sein. Und OnChange. Was wir haben werden. Wenn wir den Wert bekommen. Das ist was auch immer es da ist, wir werden den Buchnamen festlegen. Wir legen einfach den
Buchnamen fest und übergeben den Wert für den Punkt, Punkt, den Punktwert. So. Lassen Sie uns auch etwas
Styling geben. Also gebe ich einfach
einen Klassennamen an. Wird
Excel nicht an Bord schreiben. Rand, unterer Rand, oberer Rand. So. Dann
gebe ich ihm ein BR, Tag. Zeilenumbruch. Und dann werde ich noch ein Eingabefeld
haben. Also kopiere es einfach
und füge es hier ein. Ist das Styling gleich. Nur der Platzhalter
wird Buch sein. Der Wert wird Buch
und unverändert sein. Es wird ein gesetztes Buch sein. So. Andererseits habe ich das
gleiche Eingabefeld. Also kopiere ich nur den BR, das ist auch Zeilenumbruch. Das dritte wird der
Buchwert sein wird das Buch Ohr sein. Unverändert, sagte Buch
hier, so. Okay? Dann habe einfach ein BR-Tag, dann ein Label. Einfach richtig? Hast du dieses Buch
fertig gelesen? Dann? Wir werden einige haben, wir haben die Möglichkeit, dieses
ausgewählte HTML-Tag auszuwählen. Der Wert wird buchfertig sein. Dann wird Onchange ähnlich sein. Wie auch immer wir bekommen, werden
wir es ändern, um das Buch fertig zu
stellen. E Punkt, Punkt, Punkt, Punkt. In diesem Select-Tag sollten
wir Optionen haben. Die erste Option
wird wertvoll sein. Ja, das ist das ich dieses Buch gelesen
habe. Und die zweite
Option, werden wir es wissen? Das heißt, offensichtlich ist dieses
Buch für ihn nicht richtig. Hol dir. Jetzt, nach diesem Label, sollten
wir einen Knopf haben. Ich füge diesen
Code nur ein, weil ich diesen Kurs
zuletzt aufgenommen habe
und gerade einen kleinen Fehler hatte. Sie können also sehen, dass dies eine Schaltfläche mit einem
Klassennamen von Text, Excel, Schriftart, fett durch
drei, Padding bei x2 ist. Dann Hintergrund, Farbe aus, Hash F1, C, 232, gerundet, großer Rand, untere
zehn, Rand links fünf. Dann schweben, skalieren. 105, dann Übergang. Dauer 500, einfach rein, raus. Und onclick. Ich weise nur die Funktion „
Absenden“ zu
und gebe ihr einen
Namen des Buches. Das war's. Wenn du also
rennst, kannst du das
Video einfach anhalten und aufschreiben. Es ist nur eine Codezeile. Speichern Sie es jetzt und gehen Sie
zu Ihrer Anwendung. Klicken Sie einfach auf Wallet verbinden. Sehen Sie, das Formular ist hier. Du kannst es alles nennen. Ich habe bereits ein Buch,
weil ich es getan
habe, wie ich es gesagt habe
, dass ich es getestet habe. Also lerne Hardhead-Buch
oder sie Das stimmt. Bill Gates. Ich weiß nicht, dass er
daran interessiert ist oder nicht und gab es 2019. Dann füge ein Buch hinzu. Thomas wird um Zustimmung bitten. Bestätigen Sie es einfach. Mal sehen, ob wir in der Konsole unsere
Transaktion erhalten oder nicht. Ich überprüfe nur, es steht
noch aus. Es ist fertig. Klicken Sie nun auf Inspect. Und in dieser Konsole haben
wir dieses Objekt, das ist die vollständige
Transaktion C. Also das war's für dieses Video. Die Funktionalität zum Hinzufügen eines
Buches funktioniert einwandfrei. Im nächsten Video werden
wir daran arbeiten, wie wir
diese Bücher aus der Blockchain holen können. Danke.
13. Funktionalität zum Abholen von Büchern: Lassen Sie uns nun an
der Funktionalität arbeiten , um
Bücher aus der Blockchain zu holen. Zuallererst
brauchen wir einige Staaten. Schreib einfach const books. Fertig und sagte Box. Fertig ist gleich dem Verwendungsstatus. Es wird ein Array sein. In ähnlicher Weise werden
wir eine andere Box haben. Und fertig besagte Bücher und Fertigwaren. Sie benutzen Datum. Auch hier wird es
ein leeres Array sein. Arbeiten wir nun mit der Funktion unter dieser Funktion zum
Absenden des Buches. Ich schreibe const, bekomme Bücher ist gleich einem Waschbecken. Dann bekomme ich einen, ähnlicher Weise werden wir
einen Versuch Catch Block haben. Wenn ein Fehler auftritt, konsolere ich einfach console.log. In diesem Versuchs-Bereich. Auch hier werden wir
diese Codezeile haben. Kopiere einfach so viel auf Urlaub. Ich kopiere einfach drinnen. Ich werde entfernen, was nicht notwendig
ist. Ich werde diese beiden Zeilen einfach
entfernen da wir den
Itanium-Bibliotheksvertrag benötigen. Die Vertragsinstanz, die arbeitet , um die Funktion
aus der Blockchain abzurufen. Jetzt holen wir uns einfach Bücher. Möbliert ist gleich erwarten. Library Contract Dot get. Jetzt lasst uns nachsehen. Werden Sie fertig. Holen Sie sich fertige Bücher. Und in ähnlicher Weise werden wir Bücher unmöbliert
lassen, Vertragspunkt unvollendet werden lassen. Und dann legen wir einfach
den Wert des Staates fest. Das sind gesetzte Bücher fertig. Das Buch ist fertig. Und unvollendete gesetzte Bücher werden der Liste entsprechen, die aus unvollendeten Büchern
stammt. So haben wir auch unsere
gebuchte Funktion. Um es jetzt
im Frontend zu zeigen, erstellen
wir eine
separate Komponente. Also in diesem Pages-Ordner namens Come on
Nance, Gumbo, Nance. Und darin erstellen Sie eine Datei
namens Book JS. Das war's. Es wird sich also nur ein
separates, separates Buch vorstellen. Wir geben einfach
eine for-Schleife und es wird diese Komponente zurückgeben. Also hier verwende ich etwas
Styling, wenn du willst. Auch hier sage ich, dass
Sie
diese Eigenschaften, die wir am Anfang
installiert haben,
diese Abhängigkeiten,
Requisitentypen, selbst diese Eigenschaften, die wir am Anfang
installiert haben ,
diese Abhängigkeiten,
Requisitentypen, ausführen und dann
gestaltete Schlüsselbilder
aus Stilkomponenten importieren gestaltete Schlüsselbilder können. Nun, lasst uns richtig sein, ein paar
Styling Key-Frames. Und das. Dann werden wir drinnen haben, du kannst
diesen Code einfach gleich schreiben denn wie ich immer wieder sage,
ist mir das Styling egal. Nur um zu lecken, nur
um anständig auszusehen. Zumindest gebe ich
diesen Stilen Transformation. Skalierung 0,5. Dann lies Prozent. Auch hier kopiere ich einfach
diese beiden Zeilen. Eingefügt. Skaliere eins. Und dann skalieren wir eins. Okay? Dann habe ich mit Komponenten
im Staubstil einen Behälter. Dies ist also nur,
dass wir einer
Komponente direkt einen Stil geben. Darum geht es
um
Abhängigkeiten von Stilkomponenten . Ich bleibe das. Dave, schreiben
wir es auf. Eine nach dem anderen Animation. Schieben Sie 0,82 kubische Bezier darin. Stimmt's? W 0,390.5750,5651. Dann Raster anzeigen. Dann
werden Rastervorlagenspalten 38 Prozent, 20 Prozent, fünf Jahre,
Prozentsatz, 37 Prozent betragen. Dann fügen wir zwei
REMs hinzu, 0.1881.625168, Datum REM, border,
solid, ein Pixel. Grenze, Radius. Für große Zellen. Linie, Höhe. Normal. Übergang zurück Boden, 0,40 als linear. Marge. Hell. Erstens habe ich eine Rate auf 50 Pixel. Inline-Block anzeigen. Das war's. Das war's also für den
Styling-Teil. Wenn du willst, kannst du
dieses Video einfach anhalten und
es nochmal aufschreiben. Wenn ich ein bisschen schnell bin. Im nächsten Video werden
wir also an der
Buchkomponente arbeiten. Danke.
14. Erstellen einer Buchkomponente: Lassen Sie uns nun
diese Buchkomponente erstellen. Unterhalb dieses Codeabschnitts. Sagen wir, const book
ist dem gleich. Und in dieser Komponente
akzeptieren wir einige Requisiten wie id, name. Hier werden bestraft, und eine Funktion, die Click-Buch sein
wird. So fertig. Lasst uns zurückkehren. Lass uns zurückkehren, lass es uns
dann diesen Container
, der schon so
gestylt ist. Deshalb verwenden wir diese Stilkomponenten so
, dass sie, wenn wir sie verwendet haben, bereits vordefiniert ist
und funktioniert so, als würde es
wie eine Komponente funktionieren. Sie können sehen, eine
Art Containerkomponente. Du nennst es, du nennst ihn Container und wir können ihn so
benutzen. Jetzt lass uns gehen. Das ist Dave, Name. Dann. Dann sind wir hier. Dann werden
wir dieses Span-Tag einfach sagen, wenn es
fertig ist,
gleich Pause. Wenn das Buch nicht
fertig ist, haben wir
etwas oder anderes, sonst haben wir
einfach ein p-Tag. Dann haben wir einen Knopf. Dann dieses p-Tag später. Also hier, wenn wir das haben, haben sie einen Knopf. Und lass uns dem Button etwas
Styling geben. Schrift, fett, Hochzeit bei x, y, aufbrechen. Ash, F, F, 77, F. Dann werden wir Dexter White haben. Dann gerundet. Große Marge, Top Fünf. Unsere Skala 105. Übergang. Dauer. 500 ist in dieser Last. In diesem Button werden
wir dann werden
wir auch die
on-Click-Methode haben. Es ist, ist drin, hier draußen. Lass uns das auf Klick haben. Wenn der Benutzer auf einen Klick klickt, wird diese lustige Funktion ausgeführt, die Glick Book eingerichtet ist. Und wir müssen den Ausweis schicken. Das ist ein reiches Buch. Wir müssen es löschen
und einfach benennen. Nischenbuch wie dieses. Dies wird also sein, wenn die Eigenschaft
falsch ist und wenn es wahr ist, dann können wir einfach
einen Absatz geben und
ihm etwas Styling geben. Schrift. Ball, fett, Text, Höhe 0 d, 71 E. Und es wird
Buch fertig geschrieben. Sagen wir mal. Also. Jetzt, nach dieser Komponente, werden
wir einige Requisitentypen haben , die wirklich sicherstellen, dass diese Eigenschaften in dieser Reihenfolge
aufsteigen. Requisite mal ist es, wir haben einige Bedingungen, die zuerst erfüllt werden
sollten. Das heißt, das ist
die Sache, bei der es ist als ob ID so erworben wird. Requisitentypen Punktnummer, die nummeriert sein sollte
und erforderlich ist. Das ist ein Name. Prop-Typen. String, Punkt ist erforderlich. Prop-Typen B Capital String ist erforderlich als das, was wir haben. Wir haben unser Talent fertig. Also haben wir gerade kopiert. Wir haben wir fertig. So. Es, dieses
Ding ist eine Zahl. Und schließlich werden wir einfach Standardbuch wie dieses
exportieren. Buchkomponente ist fertig. Lassen Sie uns dieses Buch
auf der Indexseite zeigen , dass es nicht so ist
, dass Homepages es zeigen. Danach. Wir haben diese Schaltfläche „Hinzufügen“. Dann haben wir diesen Dave. Wir haben diese Debatte
um 132 für Tag, für
Tag ist Dave. Wir werden ein anderes
div haben, das enthält, das die Buchliste
enthält. Lassen Sie uns auch etwas Styling
geben. Flex, Flex, Spalte, Ausrichtung, zentrieren, Elemente zentrieren sich so. Andererseits
haben wir einen Dave-Klassennamen. Sind kein halbfett gedruckter Text, großer Text, Mitte,
Verwaltung der unteren vier. Und ich nenne es Bücherliste. Okay? Dann haben wir einen, dann haben wir einen Knopf. Dann haben wir einen Knopf
und es wird Bücher abrufen. Und diese Schaltfläche wird
wieder Klassen wie
Excel an Bord haben , wie diese. Und wenn Sie
mit Tailwind CSS gut sind, können
Sie es auch ändern. Dies sind nur ein grundlegendes Styling. Dann rund, abgerundet,
Rand unten. Dann ist unsere Skala, wenn 05 ,
Übergangsdauer ,
500 rein ist. Das ist also der Knopf. Und unter diesem Button werden
wir unsere Logik machen. Einfach. Was wir tun werden, sind unvollendete
Bücher. Dieses Land. Wenn es größer als 0 ist
, haben wir ein div. Wenn die Länge 0 ist, dann haben wir es div,
was, während ich gehe, einfach ein
Buch unvollendet schreiben wird. Und darin
wird es eine Reihe von Büchern geben. Das heißt, Bücher unvollendet, nicht so landen. Und lassen Sie uns dem etwas
grundlegendes Styling geben. Schrift. Halb fett Text, Mitte, Rand, unten. Für Marge, Top Fünf. Und wenn nicht, haben wir einfach ein leeres div. So.
Zeigt keinen Weg dorthin, weil
es so sein wird,
es sieht nicht gut aus. Dann, darunter,
lass es mich einfach sehen. Lassen Sie uns unten einen anderen div-Klassennamen verwenden flex sein
wird. Flex-Zeile richtet die
Mitte aus, Elemente zentrieren. Und hier werden wir
solche Bücher haben, unvollendet, Karte, wie diese. Und hier
kriegen wir einzelne Bücher. Und in diesen einzelnen Büchern werden
wir die Buchkomponente nennen. Lassen Sie uns hier eine
Doppelkomponente importieren. Importieren
Sie Komponenten wie folgt. Jetzt wird dies
einige Eigenschaften akzeptieren. Schlüsselbuch diese ID, ID, parse int. Wir sagen einfach Buch. Wir sorgen dafür, dass es ein Ausweis ist. Das heißt, es ist die N-Zahlenrate. Nehmen wir an, der Redakteur
wird später weitermachen. Buchpunktname ist gleich Balken. Buch, das Ohr. String,
so so sind schrecklich. Buch. Nicht. Dann fertig. Buch. Dot, fertig, Punkt zwei. String. Klicken Sie dann auf Buch. Fertig wird die Funktion klicken, klicken Sie auf Buch eingerichtet. Wir müssen diese Funktion erstellen. Nehmen wir an , wir haben diese Buchkomponente. Okay, hier. Das wird das sein. Mal sehen. Gibt es einen Redakteur? Wir nennen diese Komponente einfach
Dieses Klickbuch abgeschlossen. Hier. Klicken Sie auf Okay, die Schreibweise, schätze
ich, hat C. Okay beendet. Jetzt funktionieren diese einwandfrei. Sie können sehen, dass wir auch
eine
Funktion für das Flipbook erstellen müssen. Und für diese roten Linien
und alles, wenn Sie möchten, können
Sie einfach
zur Datei ts config
dot JS gehen , das ist hier. Und dann ändern Sie hier den
strikten Wert auf falsch. Der Bezirk ist
falsch, das war's. Wenn du das tust, werden
diese roten Linien und diese
Dinge gelöst. C, Die sind jetzt gelöst. Das war's also für dieses Video. Im nächsten Video werden
wir unter der
Funktionalität arbeiten, werden
wir unter der
Funktionalität arbeiten um die
Buchhandlung auf fertig zu stellen. Danke.
15. Funktionalität, um den Status des Buches zu ändern: Also willkommen zurück. Arbeiten wir an unserer Anwendung. V4. Gut, um
diese Funktion zuzuweisen, also Bücher
zu holen. Dieser Knopf. Der Button hier, der
ist das. Also schreibe einfach aufKlick
und das ist ein gutes Buch. Und in ähnlicher Weise wird
dies alle
Bücher zeigen, die fertig sind. Ebenso werden wir haben müssen, wir
Bücher zeigen müssen, welche sind, die auf diese Weise
fertig sind. Dies sind Bücher, die noch nicht fertig
sind und wir müssen Bücher zeigen
, die fertig sind. Was ich also tun werde, ist einfach dieses Stück Zeilen zu
kopieren. Nehmen wir an, als
erstes werde ich
das kopieren und hier einfügen. Es wird Bücher schreiben sein. Bücher, fertig. Bücher, fertig. Punktlänge statt
dasselbe und es ist wirklich buchfertig, das war's. Und dann mache ich
das Mapping wieder so. Also kopiere es einfach und
füge es hier ein. Ich werde dieses Mapping mit
Büchern machen, fertig, Dot Map. Und
heutzutage werden Bücher fertig sein. Und jetzt werden wir hier
an der Funktion arbeiten und wir werden sie benennen. Buch, fertiggestellt, kopiert
und eingefügt auch hier. Dies wird die Funktion sein
, die wir jetzt erstellen werden. See-Buch ist fertig. Geh hier hoch. Kreative Funktion. Const gefällt das. Ein Waschbecken. Es wird eine ID akzeptieren, wie diese. Okay? Jetzt werden
wir also wieder Try-Fang haben
und alles. wie immer Da wir uns wie immer mit dem bereits bereitgestellten Smart Contract verbinden
müssen
, bereits bereitgestellten Smart Contract verbinden
müssen
, schreiben Sie
einfach console.log und ändern den
Buchstatus. Drucken Sie einfach auch die Kopfzeile aus. Dann werden
wir in diesem Try-Block einfach, von hier
kopieren, kopieren. Kopiere einfach diese Zeilen. Füge es hier ein. Okay,
wir haben den Anbieter. Dann wird der Bibliotheksübergang sein, es wird einfach eingestellt. Beendet ID so, sagen
wir Konsolenpunktprotokoll. Das ist also die Funktion. Und die meisten Funktionen
sind etwas ähnlich. Nichts so ausgefallenes. Wir nennen das nur
, das hier fertig werden soll. Dieser braucht eine
Buch-ID und einen fertigen booleschen Wert. Also schicken wir einfach die ID und den
Booleschen Wert, das war's. Schließlich haben wir all diese Codes
für die Anwendung
geschrieben. Ich bin froh, dass Sie sich jetzt etwas
angesehen
haben, im nächsten Modul werden wir unsere Anwendung testen ob alles richtig
funktioniert oder nicht. Und wenn wir einen Fehler bekommen, werden
wir ihn so schnell wie möglich lösen. Danke.
16. Teste die komplette Anwendung: Hi. In diesem Video haben wir das Funktionieren
unserer Anwendung wirklich getestet. Wir haben aus
den letzten Videos zitiert ,
aber im Moment ist
es an der Zeit zu testen, ist
es an der Zeit zu testen ob alle Funktionalitäten
funktionieren oder nicht. Das erste, was ich
tun werde, sind Gene als das Netzwerk meiner Tomaten von
Gormley zu vermuten. Und dann klicke ich
auf Connect Wallet. Sehen Sie, Sie sind nicht verbunden,
um es Netzwerk zu nennen, daher werden wir aufgefordert, unser Netzwerk
zu wechseln. Das funktioniert gut. Lass uns ins Cholin gehen. Wenn ich dann
auf Violett verbinden klicke, hängt
MetaMask an und
dann weiter und verbinde dich. Okay. Jetzt haben wir diese Bücher. Wenn Sie sich erinnern, haben wir bereits früher ein blaues Buch
hinzugefügt. Wenn ich also auf Bücher abrufen klicke, haben wir zwei
unfertige Bücher. Siehst du, das ist einer, lerne Webbaum und der andere
ist Learn Hard Hat. Das sieht also sehr gut aus. Und auch wenn ich lerne schreibe, gibt es ein Handelstermin, der als nächstes kommt. Js. Mark Zuckerberg und 2018. Angenommen, wenn ich einfach weiter schreibe, wenn ich es auf ja ändere, Mal sehen, was passiert. können sich Warnungen bilden. Lassen Sie uns sehen, ob die
Transaktion noch ausstehend ist. Es wird einige Zeit dauern. Es ist fertig. Wenn ich jetzt auf Bücher abrufen klicke, sehe ich, dass Bücher fertig sind. Aber mir geht's einfach gut. Dieser Fehler. Ich habe verstanden, warum es zwei sind
, weil wir hier
vergessen haben, uns zu ändern. fertig gestellten Bücher
werden also so lang sein. Sagen wir das, das ist
ein sehr kleiner Fehler. Es ist, es ist korrigiert. Bücher haben eins beendet. Und wenn ich auf dieses
fertige Buch klicke, lerne einen Schutzhelm. Schon wieder. Zeigt dies an und klicke
dann auf Bestätigen. Hauptmotiv
dieses Kurses bestand darin, die Grundlagen
der Blockchain zu verstehen. Technologie ist nicht diese Benutzeroberfläche. Wenn Sie möchten, können Sie
jedes Front-End-UI-Tool verwenden und es sehr schön machen. Weil Sie vielleicht denken, dass
dies sehr einfach ist, aber die Hauptsache ist
diese Funktionalität. Jetzt ist es Ausgaben eingestellt
beendet Funktion. Diese Ausgaben. Jetzt ist es fertig. Wenn ich auf „Bücher abrufen“ klicke. Sehen Sie, dies ist auch
im fertigen Abschnitt und jetzt haben wir ein unfertiges
Buch und ein fertiges Buch. vollständige Anwendung
funktioniert also großartig. Und ich denke, wir sind
stolz auf uns selbst, dass wir eine dezentrale
Anwendung von Grund auf neu erstellt
haben. Ich hoffe, dass Ihnen der Kurs
gefallen hat. Stellen Sie sicher, dass Sie sich auch andere
Kurse von mir ansehen. Danke. Hab einen schönen Tag.