TypeScript lernen: Vom Anfänger bis zum fortgeschrittenen Programmiertechniken | Zoë Davidson | Skillshare

Playback-Geschwindigkeit


1.0x


  • 0.5x
  • 0.75x
  • 1x (normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

TypeScript lernen: Vom Anfänger bis zum fortgeschrittenen Programmiertechniken

teacher avatar Zoë Davidson, Software Engineer & Cinematographer

Schau dir diesen Kurs und Tausende anderer Kurse an

Erhalte unbegrenzten Zugang zu allen Kursen
Lerne von Branchenführern, Ikonen und erfahrenen Experten
Wähle aus einer Vielzahl von Themen, wie Illustration, Design, Fotografie, Animation und mehr

Schau dir diesen Kurs und Tausende anderer Kurse an

Erhalte unbegrenzten Zugang zu allen Kursen
Lerne von Branchenführern, Ikonen und erfahrenen Experten
Wähle aus einer Vielzahl von Themen, wie Illustration, Design, Fotografie, Animation und mehr

Einheiten dieses Kurses

    • 1.

      Intro

      1:21

    • 2.

      Kursprojekt

      0:35

    • 3.

      JavaScript Intro

      0:54

    • 4.

      JavaScript und andere Programmiersprachen

      1:44

    • 5.

      Was ist TypeScript?

      0:22

    • 6.

      Typen

      1:06

    • 7.

      Fehler

      0:41

    • 8.

      So installierst du TypeScript

      1:24

    • 9.

      TypeScript und React

      17:55

    • 10.

      TypeScript und Next.js (Styling)

      28:19

    • 11.

      TypeScript und Next.js (Typen)

      23:40

    • 12.

      Schlussbemerkung

      0:53

  • --
  • Anfänger-Niveau
  • Fortgeschrittenes Niveau
  • Fortgeschrittenes Niveau
  • Jedes Niveau

Von der Community generiert

Das Niveau wird anhand der mehrheitlichen Meinung der Teilnehmer:innen bestimmt, die diesen Kurs bewertet haben. Bis das Feedback von mindestens 5 Teilnehmer:innen eingegangen ist, wird die Empfehlung der Kursleiter:innen angezeigt.

192

Teilnehmer:innen

1

Projekte

Über diesen Kurs

In diesem Kurs lernst du alles, was du zum Schreiben JavaScript wissen musst, vom Anfänger bis zum Fortgeschrittenen:

  • Was TypeScript ist
  • So verwendest du Typen
  • So baust du einen Trinkgeldrechner

Mein Name ist Zoë, ich bin Software-Ingenieur und Filmprofessorin. Du kannst dir meine Arbeit hier ansehen.

Dieser Kurs richtet sich an alle, die schon einmal Interesse daran hatten, Programmieren zu lernen.  Dein Kursprojekt wird sein, deinen eigenen Tipp-Rechner mit TypeScript zu erstellen. 

Dieser Kurs beinhaltet eine Schritt-für-Schritt-Anleitung, wie man TypeScript von Grund auf erlernt.

  • So verwendest du TypeScript mit React
  • Was eine Programmiersprache unterscheidet
  • So schreibt man Schnittstellen und Typen

Sobald du den Kurs besucht hast, hinterlasse eine Bewertung darüber, was du davon gehalten hast!

Ressourcen

Next.js Starter: github.com/zdavidson/muxt-ts-app

JavaScript lernen: skillshare.com/de/classes/Learn-JavaScript-von-Anfänger-bis-Fortgeschrittene-Coding-Techniken

Filmausrüstung

  1. Canon 5D IV
  2. Canon 24 – 70 f/2.8
  3. Amaran 60x – erschwinglich und leistungsstark
  4. Desview T3 Teleprompter
  5. Kleine Rig-Tischhalterung
  6. Sennheiser MKE 600
  7. Neewer Mikrofonarm
  8. Zoom H4n Pro

Entwicklungsausrüstung

  1. M1 Macbook Pro 13"
  2. Apple Magic Keyboard
  3. Logitech MX Anywhere
  4. Doppelter Laptophalter
  5. LG 4k 27"
  6. Ergonomischer Schreibtischstuhl – günstig
  7. Bose QC 35 II
  8. AirPods Pro
  9. Espresso Monitor & Stand (Reise) – erstaunlich

Triff deine:n Kursleiter:in

Teacher Profile Image

Zoë Davidson

Software Engineer & Cinematographer

Kursleiter:in

Hey! I'm Zoe, a software engineer, filmmaker, and former professor from Toronto, Canada. I have an MFA in Film from Howard University, and also do work as a software engineer.

In the past, I've worked for the University of the District of Columbia, the Academy of Motion Picture Arts and Sciences, Lionsgate, Huffington Post, and I'm a member of organizations like the Canadian Society of Cinematographers.

The films that I've worked on have been featured at festivals around the world, including Sundance, ABFF, Trinidad Tobago Film Festival, and CaribbeanTales.

Check out my latest work, here: zoeahdavidson.com

Vollständiges Profil ansehen

Level: All Levels

Kursbewertung

Erwartungen erfüllt?
    Voll und ganz!
  • 0%
  • Ja
  • 0%
  • Teils teils
  • 0%
  • Eher nicht
  • 0%

Warum lohnt sich eine Mitgliedschaft bei Skillshare?

Nimm an prämierten Skillshare Original-Kursen teil

Jeder Kurs setzt sich aus kurzen Einheiten und praktischen Übungsprojekten zusammen

Mit deiner Mitgliedschaft unterstützt du die Kursleiter:innen auf Skillshare

Lerne von überall aus

Ob auf dem Weg zur Arbeit, zur Uni oder im Flieger - streame oder lade Kurse herunter mit der Skillshare-App und lerne, wo auch immer du möchtest.

Transkripte

1. Intro: Sie haben vielleicht davon gehört, aber wissen Sie, warum und wie man Typoskript anstelle von Javascript verwendet Typescript ist ein typsicheres Superset von Javascript, das dieselben Funktionen und Fähigkeiten wie Javascript ermöglicht und gleichzeitig verhindert, dass und Fähigkeiten wie Javascript ermöglicht und gleichzeitig unachtsame Fehler in Ihrer Web-App veröffentlicht werden Heute werden wir alles durchgehen, was Sie wissen müssen, um Typoskript zu lernen und zu verwenden Hi, ich heiße Zoe. Ich bin Softwareingenieur und ehemaliger Professor liebe es , anderen beim Einstieg ins Programmieren zu helfen Ich habe unzählige Websites und Web-Apps mit React CSS, HTML und mehr erstellt . Heute werden wir uns mit Typescript befassen und darüber , wie Sie damit Ihre Entwicklungszeit und -erfahrung erheblich verbessern können Ihre Entwicklungszeit und -erfahrung erheblich verbessern und -erfahrung Zu diesem Zweck werden wir dieses Projekt in Typoskript erstellen. Wir werden darüber sprechen, was Typen sind, wie man sie benutzt und warum sie nützlich sind Dann tauchen wir direkt in unser Tutorial ein. Das Tutorial wird in drei Teile aufgeteilt. Zunächst initialisieren wir unser neues Typescript-Projekt. Dann werden wir es in unseren Browsern zum Laufen bringen. Und schließlich werden wir unsere Website mit Typescript erstellen. Dieser Kurs richtet sich an alle, die daran interessiert sind, Typoskript zu lernen, obwohl ein allgemeines Verständnis von Javascript unerlässlich ist, wenn Sie Javascript lernen müssen Ich habe einen vollständigen Kurs unter dem Link unten Wenn Sie jedoch bereits mit Javascript vertraut sind und es nur auffrischen möchten, habe ich hier einige Lektionen hinzugefügt, um sicherzustellen, dass wir alle auf derselben Wellenlänge sind Am Ende dieses Kurses sollten Sie in der Lage sein, eine vollständig typescript-basierte Web-App für sich selbst zu erstellen eine vollständig typescript-basierte Web-App . Lass uns anfangen 2. Kursprojekt: Klassenprojekt. Unser Projekt für diesen Kurs wird darin bestehen, eine einfache Web-App mit Typoskript zu erstellen Für diesen Kurs ist es wichtig, Zugriff auf einen Computer zu haben, auf dem Sie Visual Studio-Code oder einen anderen Code-Editor Ihrer Wahl ausführen können oder einen anderen Code-Editor Ihrer Wahl Sie sollten auch einen Browser wie Google Chrome betriebsbereit haben , da wir ihn zur Anzeige unserer Webseite verwenden werden. Schließlich wird es wichtig sein, ein allgemeines Verständnis von Javascript zu haben . Wenn Sie mit Javascript vertraut sind, benötigen wir nur eine Auffrischung Keine Sorge, das habe ich in den nächsten Lektionen aufgenommen den nächsten Lektionen Ich hinterlasse alle Links zu allen Ressourcen und Ressourcen , die Sie benötigen, unten auf der Registerkarte „Projekte und Ressourcen“. 3. JavaScript Intro: Javascript-Einführung. Es gibt zwei Stellen, an denen Javascript in HTML-Dateien oder in einer eigenen speziellen Javascript-Datei geschrieben werden kann in HTML-Dateien oder in einer eigenen speziellen Javascript-Datei geschrieben oder in einer eigenen speziellen Javascript-Datei Wenn wir Javascript in eine HTML-Datei schreiben wollen, ist das so einfach wie das Hinzufügen des Skript-Tags zum Kopfbereich des Dokuments. Dieses Skript-Tag ist allen Skriptsprachen vorbehalten , Sprachen, mit denen Sie Befehle ausführen können, und hier könnte unser Javascript theoretisch existieren Alles, was Sie zwischen diesen Tags schreiben, wird kompiliert und als Javascript interpretiert Das ist zwar für wirklich kleine Anwendungen in Ordnung, könnte aber etwas komplizierter werden, sobald wir beginnen, immer komplexere Websites zu erstellen. In diesem Fall können wir die zweite Stelle verwenden, an der Javascript in eine eigene Datei geschrieben werden kann , und das Skript-Tag einfach als Referenz verwenden. Wir werden separate Javascript-Datei-Apps erstellen und die beiden verbinden. Und voila, wir haben Javascript zu unserem Projekt hinzugefügt. Lassen Sie uns in die Vor- und Nachteile von Javascript und Programmiersprachen im Allgemeinen eintauchen Javascript und Programmiersprachen im Allgemeinen 4. JavaScript und andere Programmiersprachen: Javascript und andere Programmiersprachen. Wie wir bereits besprochen haben, ist Javascript eine Skriptsprache, mit der Sie Logik und Funktionalität in Ihre Webseiten integrieren können Sie Logik und Funktionalität in Ihre Webseiten integrieren Aber wie macht sie das? Wie wir auch erwähnt haben, ist Javascript eine Programmiersprache. Es gibt mehrere Dinge, die die meisten, wenn nicht alle Programmiersprachen gemeinsam haben. Genau wie andere Arten von computergestützten Sprachen sind Programmiersprachen in ihrer einfachsten Form nur eine Möglichkeit für uns Menschen, mit dem Computer zu sprechen. Insbesondere Javascript ermöglicht es uns als Programmierern, über den Dom oder das Document Object Model mit dem Webbrowser zu interagieren oder das Document Object Model mit dem Das Dom ist die Programmierschnittstelle für Webdokumente und dient als Repräsentation dieser Seite, sodass sie auf der Grundlage von Benutzereingaben und Interaktionen interagiert, aktualisiert und geändert werden kann und Interaktionen interagiert, aktualisiert und geändert auf der Grundlage von Benutzereingaben Insbesondere Javascript ist die Sprache, die wir für die Interaktion mit dem Dom verwenden , und 98% aller Websites verwenden Javascript auf der Client-Seite Programmiersprachen haben auch alle ihre eigene einzigartige Syntax. Genau wie in anderen Sprachen wie Englisch und Französisch gibt es eine Syntax, die definiert und erklärt, wie Wörter zu Sätzen, Absätzen usw. zusammenkommen . Programmiersprachen haben auf die gleiche Weise ihre eigene Syntax, um zu bestimmen, was eine vollständige Codezeile ausmacht Zum Beispiel haben Programmiersprachen alle ihren eigenen Einzelfall und ihren eigenen Zweck. Sie haben vielleicht von anderen Programmiersprachen wie Python, Ruby, Java und anderen gehört Programmiersprachen wie Python, . Je nachdem, welche Art von Anwendungen sie erstellen möchten, eine dieser Programmiersprachen möglicherweise besser für diese Aufgabe geeignet als andere, da das ist eine dieser Programmiersprachen möglicherweise besser für diese Aufgabe geeignet als andere, da das Ziel dieses Kurses darin besteht, zu lernen, wie man mit Anwendungen für das Web interagiert und sie erstellt. Die beste Programmiersprache, die wir lernen können, ist Javascript, oder in diesem Fall Typescript. Lass uns darin eintauchen 5. Was ist TypeScript?: Was ist Typoskript? Typescript ist einfach eine Obermenge von Javascript. Das heißt, es verfügt über dieselben Funktionen wie Javascript mit einigen zusätzlichen Funktionen , von Javascript mit einigen zusätzlichen Funktionen denen der Entwickler profitiert Eine der Hauptfunktionen von Typescript ist die Verwendung von Typen, die sicherstellen, dass der Wert, auf den zugegriffen wird, den richtigen Aber machen wir einen Rückzieher. Was sind Typen? 6. Typen: Typen. Es gibt viele verschiedene Typen in Typoskript zugegriffen Lassen Sie uns also zunächst über die häufigsten sprechen , auf die Sie bei Ihrer täglichen Arbeit wahrscheinlich stoßen werden Einige dieser gängigen Typen Sie vielleicht bereits aus Javascript kennen , wie z. B. Zeichenfolge, Zahl und Boolean Eine Zeichenfolge ist ein beliebiger Wert, in Anführungszeichen gesetzt und gelesen werden kann Eine Zahl ist ein regulärer numerischer Wert wie 1234 usw. , und ein boolescher Wert kann einer von zwei Werten sein , wahr Es gibt auch Arrays, die, genau wie in Javascript, geordneten Liste bestehen und mehrere Datentypen enthalten können Das Typskript hat jedoch einen speziellen Typ namens any. Any ist ein Typ, der verwendet werden kann wenn Sie entweder keinen bestimmten Wert eingeben möchten oder noch nicht ganz sicher sind, welchen Typ Sie verwenden sollen. Im zweiten Fall könnten Sie auch Unknown verwenden, aber im Moment reicht jeder aus. 7. Fehler: Fehler, die Sie möglicherweise finden. Wenn Sie anfangen, Typescript zu verwenden, werden Sie zunächst viel mehr Fehler sehen Aber das ist gut so, weil es Ihnen hilft, es viel schneller zu lernen Typskript löst nicht nur Fehler bei nicht übereinstimmenden Typen aus, sondern löst auch Fehler für eine Vielzahl von Szenarien aus , die Sie verhindern möchten Wenn Sie zum Beispiel eine Funktion aufrufen, aber vergessen, alle erforderlichen Argumente in Javascript anzugeben , ein solcher Fehler als unerwarteter Fehler betrachtet unbemerkt weitergeht Dies ist jedoch etwas, das Sie nicht wollen, denn wenn diese zusätzlichen Argumente in unerlässlich sind , wird Ihre Funktion wahrscheinlich nicht so funktionieren, wie Aber das ist genug theoretisches Typskript. Lassen Sie uns damit beginnen, es selbst zu schreiben. 8. So installierst du TypeScript: Ordnung, um mit Typoskript zu beginnen, können wir es auf zwei Arten tun Wir können den Typescript-Compiler installieren und nur an einer einfachen Typoskript-Datei arbeiten, oder wir können sie in unser Create, React-App-Set integrieren Ich werde den Ladder-Weg gehen, aber ich zeige Ihnen, wie Sie ihn schnell und global auf Ihrem Computer installieren können, wenn Wenn Sie also ein Typoskript global installieren möchten , ist das ziemlich einfach Sie müssen nur den Compiler installieren. Typescript ist, wie Sie bereits erwähnt haben, ein Superset Aber der Browser liest nicht wirklich Typoskript, er liest nur Javascript. Die Art und Weise, wie wir Typescript im Browser verwenden können, besteht darin, dass es wieder nach Javascript kompiliert wird Sie werden sich an diesen Prozess des Kompilierens von einer Sprache in eine andere erinnern , aus CSS und CSS Scss wurde auf CSS herunterkompiliert. Das Gleiche gilt für Typescript und Javascript. Wenn Sie Typescript global auf Ihrem Computer verwenden möchten, müssen Sie es nur installieren Installieren Sie den Typescript-Compiler. Also wählst du NPM I, und es ist Und dann würdest du Typescript eingeben. Und wenn Sie das getan haben, hätten Sie den Typoskript-Compiler global installiert den Typoskript-Compiler global und er sollte Nachdem Sie das getan haben, haben Sie einfach überprüft, ob Sie das richtig gemacht haben Tscv und ich haben das bereits gemacht, also kommt Version 4.2 0.8 heraus. Nachdem Sie Typescript global installiert haben, können wir jetzt damit weitermachen und ein React-Projekt damit erstellen 9. TypeScript und React: Ich werde eine Codezeile kopieren , die ich hier habe, was im Grunde bedeutet, dass ich eine React-App erstellen werde und wir sie Learn Type Script nennen werden Es wird dieses ganz besondere Flag verwenden , das hier Template genannt wird. Wir haben es vielleicht schon einmal ein- oder zweimal gesehen. Die Vorlage, diesmal statt rot, wird Typoskript sein, also wird sie uns eine Typoskript-Vorlage geben damit wir uns nicht darum kümmern müssen herauszufinden, wie die App mit Typescript richtig einrichten Wir werden das einfach ausführen und sobald es fertig ist , können wir loslegen Ordnung, wir haben also unseren Ordner für gelernte Skripte eingerichtet und einsatzbereit. Also lass uns weitermachen und NPM es starten und uns ansehen, was wir im Browser haben Wie Sie hier sehen können, ist es bis auf einen wesentlichen Unterschied so ziemlich dieselbe App Es hieß, Quell-App TSX anstelle von JSX bearbeiten , um sie zu speichern und neu zu laden. Ziemlich genau Das ist der einzige Unterschied, den wir hier mit unserem Typoskript haben . Also, was wir jetzt tun werden, ist, in unseren öffentlichen Ordner zu gehen . Wir sagen , alles ist gleich. Gehen wir in unseren Quellordner und schauen uns an, was hier vor sich geht. Wie Sie sehen können, haben wir ein paar verschiedene Dateien in diesen beiden Ordnern. In unserem größeren Verzeichnis und in der App und in unserem Quellordner. Schauen wir uns diese TS-Konfigurationsdatei an. Das ist also eine neue Datei, die wir beim letzten Mal nicht hatten. Diese Datei teilt dem Typskript-Compiler im Grunde dem Typskript-Compiler wie er den Code kompilieren soll Es gibt also verschiedene Versionen von Javascript, die derzeit im Internet verfügbar sind Wenn wir jetzt Typskript nach Javascript kompilieren, wollen wir es im Grunde auf die älteste Version kompilieren , die immer noch perfekt nutzbar ist Weil wir sicherstellen wollen , dass es mit so vielen Maschinen wie möglich kompatibel mit so vielen Maschinen wie möglich Wenn wir es nur auf die neueste Version von Javascript kompilieren würden, hätten einige ältere Maschinen möglicherweise keinen Zugriff auf viele der Funktionen , die es implementiert. Und dann würden wir unsere Websites unzugänglicher machen. In diesem Fall haben wir es also auf ES Five herunterkompiliert, was eine etwas ältere Version von Java-Skript ist Ich glaube, Ron ist inzwischen sieben oder acht. Und dann gibt es noch ein paar andere Optionen, die Ihnen auffallen werden. Das alles ist auch im Jon Json-Objekt enthalten. Es heißt, dass Sie damit Javascript einfügen können, da alle Javascript-Dateien gültige Typoskript-Dateien sind Wenn Sie also tatsächlich Javascript in ein Typoskript-Projekt schreiben können , macht das vielleicht nicht viel Sinn, aber Sie können das tun, wenn Sie möchten Und dann ist es streng? Es wird also eine strenge Typprüfung erzwingen. Möglicherweise oder wenn Sie lernen, möchten Sie das vielleicht eingeschaltet lassen. Aber es kann sein, dass es später in Ihrem Projekt zu schwierigen Regeln kommt oder auch nicht . Es hängt davon ab, was für Sie funktioniert, und dann von ein paar anderen Werten, die sie einfach automatisch für uns eingegeben haben. Da wir mit Typoskript arbeiten. Wir werden immer mehr sehen, wann und wann wir nicht mit diesen Dateien interagieren müssen. Aber vorerst lassen wir es so wie es ist. Als Nächstes werden wir in unsere TSX-Datei und unsere Index-TSX-Datei gehen unsere TSX-Datei und unsere Index-TSX-Datei und sehen, was diese dort haben Die Index-TSS-Datei, TSX-Datei, sieht ziemlich Da ist nichts wirklich anders. Wenn wir in unsere TSX-Datei gehen, ist es ehrlich gesagt so ziemlich dasselbe Und wie Sie bereits sehen können, sind Typescript und Javascript so ziemlich dasselbe Es gibt nicht viel, was sehr unterschiedlich ist, aber es gibt ein paar wichtige Elemente , die einen Unterschied machen werden Lassen Sie uns weitermachen und eine kleine App erstellen , um mit diesen zu arbeiten. Also habe ich eine Komponente namens Counter erstellt , genau wie unseren vorherigen Counter. Dieser Zähler könnte Dinge wie eins hochzählen oder runterzählen. Im Moment macht er nichts, es ist nur eine leere Komponente. Aber lassen Sie uns weitermachen und versuchen, ihm einige Requisiten zu geben, damit wir ihm einige Funktionen hinzufügen können Was wir also in unserer App tun werden, lassen Sie uns hier ein paar Variablen erstellen Sagen wir Titel und wir geben dem Titel den Wert meines Zählers. Das könnte also der Titel für unseren Zähler sein. Wir sagen Const-Schaltflächentext und wir könnten sagen, das könnte plus eins sein Also geben wir ihm nur einige grundlegende Variablen. Das alles soll nur zeigen, wie Typoskript funktioniert. Wir werden sehen, dass uns das kleine gelbe Unterstreichungen gibt, was schon früher der Fall war Da die Variablen zwar deklariert wurden , aber nicht rot sind, sie noch nicht verwendet. Keine Sorge, darauf kommen wir zurück. Was wir jetzt tun werden, ist, sie an die Theke weiterzugeben. Wir sagen, Titel ist gleich Titel und Button. Entspricht dem Button-Text. Cool, wir bekommen immer noch diesen Fehler, weil, aber jetzt ist es tatsächlich ein Typfehler Es heißt also, dass der Typ des Titels der Zeichenfolge und Button-Texttyp der Zeichenfolge nicht dem systemeigenen Attribut zugewiesen werden können. Für intrinsische Attribute existiert kein Eigenschaftstitel. Was bedeutet das also? Typoskript ermöglicht also im Grunde diese ganz besondere Sache, die als Tippen bezeichnet wird Und durch das Tippen können wir sicherstellen, dass die Werte, die wir übergeben, von einem bestimmten Typ sind, oder? Wir sind, weißt du, in einem Titel wo es Text sein soll, wir wollen, dass es eine Zeichenfolge ist. Wir übergeben zum Beispiel kein Objekt, wir übergeben nur eine Zeichenfolge. Type Script können wir dies überprüfen, bevor wir tatsächlich zur Kompilierungsphase kommen und feststellen, dass unsere App einfach ohne Grund kaputt ist Wenn wir also zu unserem Zähler gehen, können wir diese Variablen tatsächlich einfügen , wie wir es zuvor für Titel- und Schaltflächentext getan haben , und wir können sie speichern Aber wir bekommen hier einige Fehler. Wir bekommen also, dass alle zerstörten Elemente unbenutzt sind. Der Titel des verbindlichen Elements hat implizit einen beliebigen Typ. In Ordnung, wir bekommen also zwei Fehler. Wir erhalten eine Fehlermeldung, weil wir sie noch nicht verwendet haben. Ordnung. Aber wir bekommen auch den zweiten Fehler, den wir noch nie gesehen haben. Der Titel des verbindlichen Elements hat implizit einen beliebigen Typ. Jetzt sind die Typen und das Typoskript genau wie die verschiedenen Datentypen, über die wir zuvor gesprochen haben Wir haben ein Objekt mit einer booleschen Zahl als Zeichenfolge, aber es gibt dieses Ding im Typskript, das als Typ bezeichnet wird, und das ist eigentlich kein guter Irgendjemand sagt wortwörtlich, dass es von beliebigem Typ sein könnte , und das macht den Zweck der Verwendung von Typoskript Wenn Sie jemals versuchen, etwas vom Typ eines beliebigen Typs einzugeben, erhalten Sie tatsächlich eine Fehlermeldung Es gibt also ein paar Möglichkeiten, wie wir diesen Fehler umgehen können. Ordnung, die Art und Weise wir diese Fehler zuerst umgehen werden, lassen Sie uns weitermachen und sie in unserem Projekt implementieren. Also setzen wir einfach ein H ein und wir geben ihm einen Titel. Wir geben ihm die Eigenschaft eines beliebigen Titels. Wir speichern das und erstellen dann eine Schaltfläche. Wir geben ihr die Eigenschaft des Button-Textes . Cool. Wir werden weitermachen und das speichern. Jetzt haben wir zumindest den ersten Fehler behoben, aber wir haben immer noch den Fehler vom Typ Eddy. Was wir in Typoskript tun müssen, ist tatsächlich etwas zu erstellen, das als Interface bezeichnet wird. Eine Schnittstelle ist im Grunde nur ein Regelwerk, das der Komponente sagt, was mit den übergebenen Variablen mit den Eigenschaften geschehen soll , die über sie übergeben wurden. Die Art und Weise, wie Sie eine Schnittstelle erstellen, besteht darin, dass Sie Ihre Komponente direkt darüber verlassen, vielleicht dort, wo Sie etwas importieren würden , das genau zwischen diesen beiden Leerzeichen liegt. Du machst weiter und sagst Interface und dann gibst du ihr einfach einen Namen. Normalerweise nennen die Leute es einfach Requisiten, aber du könntest es nennen, wie du willst Sie könnten es Counter-Requisiten oder App-Requisiten nennen , um spezifisch für Ihre Komponente zu sein Sie können es aber beliebig nennen da wir nur eine Komponente haben, die Requisiten benötigt. Wir nennen es einfach Requisiten, aber es muss Kapital sein. Welchen Namen Sie auch wählen, stellen Sie sicher, dass der erste Buchstabe ein großes Interfaces ist und dass es sich um ein Objekt Also werden wir unser Objekt einfach dort erstellen. Es entspricht nicht dem, es werden nur die geschweiften Klammern verwendet. Dann wollen wir für jede Requisite, die wir haben, die zum Counter gesendet wird, der Schnittstelle mitteilen, welcher Typ dieser Typ sein soll Wenn ich hier Titel eintippe, kann ich einen Doppelpunkt verwenden, um ihm dann einen Typ zuzuweisen Also sage ich, dass der Titel vom Typ Zeichenfolge ist und speichere ihn. Und wir haben einen erledigt. Der nächste ist Schaltflächentext , der ebenfalls vom Typ Zeichenfolge ist. Und wir fügen hier eine Zeichenfolge ein und speichern sie dann und arbeiten gut. Jetzt bekommen wir hier diesen anderen Fehler und wir bekommen immer noch diese Fehler hier. Das liegt daran, dass diese beiden noch nicht verbunden wurden. Sie existieren in derselben Datei. Aber die Komponente, die Komponente muss angewiesen werden, diese Requisiten tatsächlich zu verwenden Die Art und Weise, wie Sie das mit SX machen , ist, dass Sie hier einfach einen kleinen Doppelpunkt direkt neben diese verschnörkelten Klammern setzen direkt neben diese verschnörkelten Klammern und den Namen Ihrer Schnittstelle eingeben . Also in unserem Fall: Props and save. Und wenn Sie das einmal getan haben, werden Sie feststellen , dass all unsere Fehler verschwunden sind. Und jetzt haben wir unsere Werte mit einem Typ initialisiert mit einem Typ Nun, wenn wir es tatsächlich wären und wenn du deine Seite auscheckst, hätten wir meinen Zähler mit einer Nummer, richtig Ziemlich einfach. Es sind auch verschiedene Typen erhältlich. Angenommen, Sie möchten eine Funktion weitergeben, richtig? Nehmen wir an, wir erstellen eine OnClick-Funktion, wenn ein Klick einem M Konsolen-Punktprotokoll entspricht, auf das geklickt wurde Sie möchten also nur eine wirklich einfache On-Click-Funktion erstellen eine wirklich einfache Und das geben wir ebenso wie eine Requisite weiter. Wie üblich werden wir feststellen, dass es gelb wird, weil es sich um eine Funktion handelt Und wir müssen es hier per Klick zu unseren Requisiten hinzufügen. Fügen wir es mit einem Klick auf unsere Schaltfläche hinzu. Sag das. Aber das Problem ist erstens, es ist hier nicht gelb, weil es nicht weiß, um welchen Typ es sich handelt, oder? Weil wir es hier nicht auf unseren eigentlichen Requisiten angebracht haben. Lassen Sie uns also weitermachen und es tatsächlich auf unsere Requisiten auftragen. Also sagen wir auf Klick. Aber der Unterschied hier ist, dass es eine Funktion ist. Und wenn Sie sich an Ihr Javascript erinnern, eine Funktion nicht wie ein Typ in Java-Skript, oder? Es ist einfach etwas, das wir benutzen, oder? Ich meine, Funktionen sind wohl Objekte, aber du würdest es nicht wollen , sie sind nur von einer anderen Klasse, sie sind von einem anderen Typ. In Typoskript haben sie also tatsächlich etwas für Funktionen, bei dem Sie angeben würden, ob sie etwas zurückgeben oder nicht. Die Syntax dafür besteht also eigentlich nur aus Ihren regulären Klammern Dann würdest du den Pfeil eingeben und dann würdest du void eingeben, wenn nichts zurückgegeben Wenn es etwas zurückgibt, könntest du vielleicht Zeichenfolge oder was auch immer es zurückgibt sagen. Und wenn es Argumente braucht, könntest du sie hier übergeben, als ob es ein Zeichen vom Typ string braucht, wenn das wahr wäre. Das gilt nicht für unsere Funktion hier. Aber in den meisten Fällen werden die meisten Funktionen nur unser einfaches Argument weitergeben, weniger Funktionen, die ungültig werden, und der Grund, warum sie ungültig werden, ist, dass sie eigentlich nichts zurückgeben, oder? Wenn eine Funktion etwas zurückgibt, dann wären das aussagekräftige Daten die in einer Variablen oder etwas anderem gespeichert werden könnten. Aber wenn Sie eine Funktion weitergeben , löst sie in den meisten wenn Sie eine Funktion weitergeben Fällen einfach etwas in der anderen Anwendung aus. Wenn wir also zum Beispiel eine Schaltfläche nehmen und unsere eigene Schaltflächenkomponente erstellen würden, Schaltfläche nehmen und unsere eigene Schaltflächenkomponente wie wir es zuvor mit der Anzeige in der Subtraktionsschaltfläche getan hatten , könnten wir den Klick einfach als Leere übergeben und gesamte Logik in der Zählerfunktion belassen . Das ist eine Option, die wir hätten haben können Jetzt, wo wir die Klammern leer gesetzt haben , genau wie bei einer Pfeilfunktion, wissen Sie, Klammern, und dann wird nichts zurückgegeben Wir haben es hier zu unseren Requisiten hinzugefügt und wir haben es zu unserer Funktion hinzugefügt Wenn wir auf plus eins klicken, werden wir es in unserer aktuellen Version feststellen. Lassen Sie mich das löschen und wenn wir hier in unserer aktuellen Konsole nachschauen, werden wir feststellen, dass dort werden wir es in unserer aktuellen Version feststellen Lassen Sie mich das löschen und wenn wir hier in unserer aktuellen Konsole nachschauen, Klick steht Und jedes Mal, wenn wir darauf klicken, wird dem Stapel einfach eins hinzugefügt , sodass wir wissen, dass es richtig funktioniert. Geben Sie Script ein. Es ist zwar etwas gewöhnungsbedürftig, aber wenn Sie sich erst einmal daran gewöhnt haben, ist es viel einfacher, damit zu arbeiten. Ich persönlich finde es schwieriger ist, mit größeren Objekten zu arbeiten , wenn man mit Typoskript arbeitet, oder? Nehmen wir an, wir hätten ein Objekt vielleicht haben wir wieder ein Objekt namens Haus, richtig? Und das ist ein Objekt, das ist ein Objekt, das den Namenswert meines Hauses hat. Und dann hat es vielleicht Zimmer, was eine Zahl ist. Und dann hat es vielleicht Geräte, was eine Reihe von Ja ist, und es hat Geräte. Nehmen wir also an, wir übergeben das Haus an unsere Thekenfunktion. Wir sollten diese Komponente wahrscheinlich umbenennen, aber sagen wir, wir übergeben House an unseren Zähler. Es gibt ein paar Möglichkeiten, wie wir damit umgehen könnten. Wenn wir House importieren, protokollieren wir es vorerst einfach in der Konsole. Um diesen ersten Fehler zu beheben, wollen wir ihn zu unseren Requisiten hinzufügen Also werden wir House zu unseren Requisiten hinzufügen. Aber welchen Typ geben wir ihm, oder? Wir könnten es, glaube ich, dem Objekttyp geben, aber theoretisch, wenn man darüber nachdenkt, ist alles in Javascript ein Objekt. Es ist also vielleicht nicht die beste Idee, ihm den Objekttyp zu geben. Ich meine, es funktioniert. Aber es ist vielleicht nicht der beste Weg, um zu überprüfen, ob es richtig funktioniert, oder? Ich meine, wir haben es auf der Konsole protokolliert. Es ist in Ordnung, es funktioniert. Aber in und in einer idealen Welt hätten wir tatsächlich eine etwas spezifischere Typisierung, eine etwas strengere Typisierung, damit wir wissen ob wir die richtige Form unseres Objekts haben oder nicht . Weißt du, Haus mit dem Namen und den Geräten und den Zimmern. Weißt du, wir wollen sichergehen, dass das auch wirklich das richtige Objekt ist. Eine Möglichkeit, dies zu tun, besteht darin, in der App zu beginnen Sie können einen Typ für Haus erstellen, also sagen wir Interface und Sie können auch mehrere Schnittstellen haben. Sie müssen nicht nur eine haben, sondern Sie können Interface House sagen. Dann können Sie im Grunde die Form dieses Hauses verwenden, um diesen Typ zu erstellen. Sie können sagen, der Name wird eine Zeichenfolge sein, die Räume werden eine Zahl sein, die Geräte werden aus einer Reihe von Zeichenketten bestehen. Sie würden das so schreiben, dass Sie eine Zeichenfolge eingeben und dann das Array-Symbol daneben setzen. Es sagt uns, dass es sich tatsächlich um ein Array dieser Zeichenketten handelt. Wenn es ein Array von Zahlen wäre, könnten Sie, Sie könnten eigentlich einfach Array und Zahl eingeben, aber in unserem Fall werden es Zeichenketten sein. Was Sie dann tun wollen, Sie werden sicherstellen, dass Sie diese Exportschnittstelle exportieren und dann möchten Sie die Schnittstelle in den Zähler importieren. Denken Sie also daran, wie ich gesagt habe, dass Sie die Schnittstellen benennen können , alles, was Sie wissen. Stellen Sie einfach sicher, dass es für das , was die Sache ist, relevant ist. Und du könntest auch House eingeben. Sie können hier Ihre Doppelpunkte setzen und dann House den Haustyp geben, sodass der Compiler auf beiden Seiten weiß, okay, dieses Haus passt zu diesem Haus Sie sind beide vom gleichen Typ. Wenn wir also zu unserem Zähler gehen, können wir zum Anfang unserer Datei gehen, wo sich all unsere Import-Anweisungen befinden sollten, und wir sollten von der Punktstrich-App ausgehen Und dann gehen wir hier zu unserem Hausobjekt. Und dann gib ihm einfach die Art des Hauses. Und jetzt ändert es eigentlich nichts an unserer App, aber wir wissen jetzt, dass es genauer getippt ist, oder? Wir wissen jetzt, dass diese beiden Dinge mit Sicherheit zusammenpassen. Wir wissen mit Sicherheit , dass das Haus vom Typ Haus ist und das andere auch vom Typ Haus Wenn wir also tatsächlich die falsche Art von Schnittstelle hatten , richtig, sagen wir, ich habe hier eine weitere Schnittstelle erstellt und ich habe sie Home genannt und ich hatte einen Namen und es war nur eine Nummer und das war's. Und ich habe versucht, das an diesen Typ nach Hause weiterzugeben. Es sollte einen Fehler melden. Und du wirst an unseren Bauchmuskeln sehen, dass es bereits rot geworden ist. Sie werden hier also sehen, dass es uns sagt, dass der Typ House Typ Home nicht zugewiesen werden kann, weil die Eigenschaften von Name nicht kompatibel sind Zeichenfolge, die Sie dem Typ Nummer nicht zuweisen können. Hier zeigt Typoskript seine wahre Stärke. Wir haben vielleicht zwei sehr ähnliche Typen wie Haus und Heim. Dass sie fast dasselbe sind und beide den Namen Eigentum haben. Die Namenseigenschaft selbst ist jedoch nicht vom gleichen Typ. Ich weiß, dass das vielleicht ein bisschen knifflig und ein bisschen verwirrend ist, aber wenn Sie ein bisschen mehr an Typoskript arbeiten, wird es viel klarer werden was Sinn macht und was nicht Aber im Moment können Sie sehen, dass Typoskript die Prüfung für Dinge auf die gleiche Weise eingeben Sie übernimmt und sicherstellt, dass Sie keine unachtsamen Fehler machen, solange Sie die Dinge auf die Ich persönlich finde Typoskript wirklich unverzichtbar. Ich schreibe lieber damit, wenn ich Apps erstelle. Nur weil es das alles macht. Ich suche nach meinen dummen kleinen Fehlern, bevor ich zur eigentlichen Produktionsphase komme , und dann kann ich nicht herausfinden, was mit der App nicht stimmt Das war also nur eine kurze Einführung in Typoskript, und wir werden etwas später weiter damit arbeiten Wenn Sie jemals Fragen dazu haben was Sie mit Typoskript tun können und was nicht, hinterlasse ich einen Link zu der Website der Typoskript-Dokumentation, damit Sie auf alle Informationen zugreifen können , die Sie möglicherweise benötigen, oder alle Informationen nachschlagen können, die Sie benötigen, wenn Sie sich nicht sicher sind wie man etwas in Typescript schreibt. 10. TypeScript und Next.js (Styling): Ordnung, also lassen Sie uns weitermachen und Entwicklung unserer Typskript-Anwendung beginnen Wenn Sie sich die Entwurfsdatei hier ansehen, werden wir das erstellen. Es ist eine einfache App zur Berechnung von Trinkgeldern, die verschiedene Typen beinhaltet mit denen wir arbeiten können, um zu überprüfen, ob unser Projekt korrekt funktioniert, und wir können Typen-Skripte lernen. Lassen Sie uns also näher darauf eingehen. Das Wichtigste zuerst: Ich werde hier in meinem Repository beginnen. Jetzt habe ich diese Starter-App hier bereits verwendet. Sie ist auf meinem Github, sie heißt Muck App. Das bedeutet, ein paar schnelle Dinge zu kombinieren , um schneller einsatzbereit zu sein, indem Material Y next S verwendet wird, und Skript eingegeben Die meisten davon beziehen sich nur auf das Styling und das Erstellen einer schnellen App. Also zögern Sie nicht, es zu benutzen, wenn Sie möchten. Aber das müssen Sie nicht, Sie können einfach eine normale Anwendung mit React starten und Script eingeben. Wir haben hier also drei oder vier Abschnitte. Wir haben den Rechnungsbetrag, den Prozentsatz des Trinkgeldes, die Anzahl der Personen und dann den Trinkgeldbetrag pro Person. Dies ist das berechnete Stück und das zurückgesetzte Stück. Okay, das ist ziemlich einfach. Was ich tun werde, ich gehe davon aus, dass Sie mit dieser App den Rechnungsbetrag eingeben möchten. Sie sollten also irgendeine Art von Eingabe verwenden. Sobald Sie das eingegeben haben, möchten Sie dann den Trinkgeldbetrag zu dieser Zahl addieren und dann die Anzahl der Personen hinzufügen, als ob die gesamte linke Seite Ihre Eingaben sind und dann die rechte Seite Ihre Ausgabe ist, im Grunde aus all dem ergibt. Um das zu tun, denke ich, werde ich eine Trinkgeldeingabe und eine Trinkgeldausgabe erstellen. Vielleicht werde ich eine neue Datei erstellen, um sagen wir, Bill oder Cost Input zu geben. Und ich füge das hier ein und dann wir sagen sagen wir wieder A. Du kannst sie benennen, wie du willst. Nur das Erste, was mir in den Sinn kam. Ausgang. Ordnung, großartig. Also hast du die Eingabe und die Ausgabe. Nun zum Nachdenken, besonders wenn Sie mit einem Reaktor-Skript oder einer anderen Technologie wie dieser arbeiten , sollten Sie darüber nachdenken, wie sich der Ausgangszustand Ihrer Anwendung befindet. Ist es in jeder Komponente enthalten, und haben wir dann einen größeren globalen State-Manager? Lebt es in einer höheren Komponente? Wie fließen Ihre Daten? Im Wesentlichen denke ich, dass es sich dabei um eine ziemlich einfache Anwendung handelt, also würde ich keine komplexere, ich denke eher rote Datensituation verwenden wollen . Ich denke, ich möchte versuchen, es einfach innerhalb des lokalen Bundesstaates zu halten. Vielleicht stellen wir es auf den Z-Stand, aber lassen Sie uns sehen, wie viel wir tun können ohne es wirklich zu sehr herumzuschieben. Ordnung, das Wichtigste zuerst, lassen Sie uns das fertig ausarbeiten. Wir wollen das Trinkgeld, Prozentsatz und die Anzahl der Personen in unseren Kosten einbeziehen. Wir werden ein paar verschiedene Elemente in unserer Box haben , die wir hinzufügen werden. Wir werden sagen, ein bisschen ist Typografie, um zu sagen, Bill S T Prozentzahl. Oh, großartig. Okay, cool. Und dann werden wir irgendeine Art von Texteingabe haben. Oh, gib mir hier einfach den gleichen Fehler, weil ich direkte Eingaben machen muss. Direktimporte, ich sollte sagen, n Eingaben. In Ordnung, lassen Sie uns Box importieren und lassen Sie uns Timpografie importieren. Ordnung, großartig. Jetzt hat meine Eingabe eine Textfeldkomponente, genau das ist es. Also werden wir uns das einfach ausleihen. Wir werden uns das Grundtextfeld „Gliederung“ für unsere Rechnung und für unsere Personenzahl ausleihen Grundtextfeld für unsere Rechnung und für unsere Personenzahl ausleihen Ich mache einfach weiter und importiere das dort. Cool, großartig. Für diese wird es jetzt eher eine Auswahl sein , die auf einer Schaltfläche mit einer Eingabe am Ende basiert. In diesem Sinne ist es etwas komplexer Ich werde sie tatsächlich in Boxen packen, damit wir nicht verwechseln, welche welche ist. In Ordnung, das ist also für die Rechnung. In diesem Feld wird der Prozentsatz des Trinkgeldes angegeben. Ich werde in diesem Feld noch etwas mehr hinzufügen. Füge die Knöpfe hinzu, und dann wird dieses Feld für die Anzahl der Personen sein. Fantastisch. Nur um die Dinge etwas klarer zu strukturieren , weil ich denke, es wird etwas unhandlich werden . In Ordnung, cool Also haben wir jetzt die Sache mit diesen Eingängen, richtig? Als ob wir es so haben könnten, dass der Wert, unabhängig davon, ob der Benutzer den Wert eingibt, verwendet. Außerdem sollte ich hier die Farbe ändern , damit wir tatsächlich Farbe sehen können . Okay, cool. Also ja, ich könnte es einfach so einstellen, dass, wenn ich den Betrag in die Kosteneingabe eingebe, er einfach in dieser Komponente liegt. Aber weil wir auf den Betrag 142 zugreifen müssen , damit wir den Gesamtbetrag des Trinkgeldes pro Person erhalten können. die Art und Weise angeht, wie ich über den Staat denke, ich möchte den Staat erhöhen, oder den Staat aufheben und ihn im Trinkgeldrechner selbst leben im Trinkgeldrechner lassen. Also, wie sieht das aus? Nun, für mich sieht es so aus, als würde man ein paar Elemente erstellen, ein paar Zustandselemente. Am Ende würden wir einen Gesamtpreis von Null erstellen und diesen dann über unsere Apps weitergeben. Das erledigen wir in nur einer Sekunde. Lassen Sie uns mit dem Styling fertig werden. Also geben wir dieser Hintergrundfarbe. Hintergrundfarben, in Ordnung? Und wie gesagt, zögern Sie nicht, jedes Styling zu verwenden, das Sie möchten. Das liegt ganz bei dir. Ich benutze nur Maly, oder? Weil es für mich ein bisschen schneller ist. Okay. Und dann, oh, weißt du, das ist das andere Problem, ich muss daraus eine Flexbox machen. Alles klar? Fantastisch. Okay, also jetzt innerhalb dieser, lassen Sie uns weitermachen und fertig stellen diese Himmelslinie die Breite dieser 379 sein wird dass diese Himmelslinie die Breite dieser 379 sein wird? füge ich nicht hinzu. Das untere auch. Die beiden werden quasi spiegelnde Stile haben. Ich frage mich, ob es irgendwelche gab, vielleicht kommentieren Sie das. Da haben wir's. Ich habe mich gefragt , warum das nicht im globalen Stil wirksam wird. Ich habe hier quasi einen globalen Reset eingefügt, der nützlich ist , aber er meine Marge überschrieben und Paddy, das habe ich entfernt In Ordnung, also los geht's. Alles klar, es hat hier ein Etikett und es wird Leute stehen, dann dieser, es wird sein, der Rechnungsaufkleber wird nur 1$ sein und diese beiden Ausweise unterschreiben weil sie für uns im Moment nicht nützlich sind. Sie können sie ändern, wenn sie nützlich werden, dann werde ich auch die Farbe für beide so einstellen , dass wir den Text darin sehen können. Ich repariere die Tasse in einer Sekunde. Unser nächster Beitrag hier sollte das berücksichtigen. Okay, fügen wir also diese fünf Tasten und eine Eingabe hinzu. Einer wird einer dieser Eingänge ohne die Breite sein. Dann werde ich schnell etwas tun. Dann sage ich „ Kostentipp pro Prozent und setze das auf eine Reihe von Zahlen Ich schätze, ich werde 5% sagen. 5% 10% 50% 20% und 25. Ist es 25% Oh nein, tut mir leid. 50% 25% Und 50% 25% und 50% In Ordnung. Geil. Das sind also die Prozentsätze der Trinkgelder. Jetzt, hier unten, werde ich sie einfach kartografieren. Ich werde sagen, dass Prozentsätze jedem Prozent zugeordnet werden. Ich möchte dann weitermachen und eine Schaltfläche mit dem Prozentwert als Schaltfläche zurückgeben , und sie könnte auch hier angegeben werden Lass mich das loswerden. Ich kann nicht sagen , dass ich es zurückgeben soll, aber Altos Key, verkaufter Schlüssel ist der Prozentsatz, weil es sich um Unikate handelt Ordnung, cool. Also, jetzt haben wir unsere Knöpfe. Fantastisch. Lass uns die Hintergrundfarbe so ändern , dass sie so cool ist . Und dann setzen wir die Breite von jedem auf 117, glaube ich. 48. Perfekt. Fantastisch. Dann das, weißt du was, ich habe eine flexible Säule. Ich möchte, dass es eine flexible Spalte ist, aber ich glaube, ich möchte sie in die Schachtel packen. Ich packe die Schaltflächen im Textfeld in ein Feld. Da haben wir's. Und dann sage ich, dass Display Flex Wrap sein wird, dann sage ich Breite. Sagen wir mal. Die 353? Ja, drei hintereinander. Nehmen wir an, die Breite ist 450. Fantastisch. Ich werde diese Stile einfach in dieses Textgefühl kopieren und speichern und vielleicht ein bisschen Rand hinzufügen. Darin sehen wir hier ziemlich gut aus. Fantastisch. Das sieht für mich ziemlich gut aus. Ich denke, ich bin damit ziemlich zufrieden, was nur den allgemeinen Stil angeht . Was ich jetzt mit diesen Boxen machen werde, ich werde oben und unten für jede dieser äußeren Boxen etwas Rand hinzufügen , da haben wir einen guten Abstand. Ich könnte auch eine Flexbox gebrauchen, was wahrscheinlich besser wäre. Machen wir aus dieser äußeren Box eine Flexbox. Ich werde Weltraum sagen. Jetzt ist der Abstand gleichmäßig von oben nach unten. Ordnung, cool. Das sieht ziemlich gut aus. Mal sehen, was müssen wir noch tun? Oh ja, wir müssen die andere Seite machen. Lassen Sie uns hier ein wenig über die Rechnungsausgabe nachdenken. Rechnungsausgabe, wir haben diese dunkelgrüne Box. Fangen wir damit an. Lass uns noch einmal diese Farbe nehmen. Sagen wir früher. Und dann geben wir ihm eine Breite, 413 mal 41714. Nur 413 mal 413, aber das ist 417, Sag die Co O, die ich brauche, muss ich zum Trinkgeldrechner hinzufügen Es ist nicht hier. Das soll hier rauf gehen. Rand Null O für den Tipprechner selbst, ich muss die Gegenstände zur Mitte hin ausrichten , okay? Perfekt. Cool, cool, cool. Sieht gut aus. Alles klar, als Nächstes möchte ich weitermachen und die Teile hinzufügen , die wir wollen, sie rauskippen und zusammenzählen und einen Reset-Knopf. Lassen Sie uns ein paar Typografie-Elemente erstellen. Wir sagen, behebe einfach den Fehler oben hier. Ich sage den Betrag des Trinkgeldes pro Person, und das ist dann ein Betrag. Wir werden das in 2 Sekunden beheben. Das können wir in eine Kiste packen. Und dann machen wir es noch einmal, aber wir sagen insgesamt pro Person. Dann werden wir hier unten eine Schaltfläche mit der Aufschrift „Zurücksetzen“ haben . Derselbe Knopf. Okay, Reset-Knopf, wir schaffen es. Das ist gekommen. Okay? Okay, großartig. Also wende dieses Zeug auch in der nächsten Box an. Cool. Perfekt. Dann werden wir die beiden in eine Schachtel packen. Und der Grund dafür, diese beiden in einer Box, ist, dass, wenn ich sage, sie den inhaltlichen Abstand zwischen den Schaltflächen unten und den Preisangaben oben rechtfertigen . Fantastisch Per cool. Da haben wir's. Ziemlich einfach. Ich werde nur noch ein paar Stile nachbessern und dann werden wir weitermachen und mit unserem Ty-Skript arbeiten. In Ordnung, weißt du, ich glaube, ich muss es ins Visier nehmen. Ich versuche nur, die Farbe hier ins Visier zu nehmen , damit wir sie sehen können. Ich glaube, ich muss zielen. Lassen Sie mich die Basis eingeben. Kann ziehen, ja. In Ordnung, perfekt. Genau das möchte ich tun. Ordnung, also schnapp ich mir einfach die Farbe, nehme sie raus. Nimm die Farbe raus, kannst die Farbe rausnehmen, du tust gar nichts. Und nimm einfach diese Grafik dort. Ordnung, cool. Also tippe hier nur Dinge ein, wir können sie jetzt sehen. Irgendwelche anderen kleinen Anpassungen. Diese Seite sieht ziemlich gut aus. Jetzt denke ich, die rechte Seite hier, vielleicht könnten wir einfach diese Farbe, die Farbe der Spitze, auf Weiß ändern die Farbe der Spitze, auf und ihr etwas mehr Abstand geben. Und dann sollten wir in der Lage sein , weiterzumachen und zu unserem Schriftfeld dazwischen überzugehen unserem Schriftfeld überzugehen . 11. TypeScript und Next.js (Typen): Ordnung, jetzt, wo wir all das aufgebaut haben, einbauen In Ordnung, jetzt, wo wir all das aufgebaut haben, wollen wir weitermachen und die Typskript-Funktionalität, den Zweck dieser Lektion, und sehen, wie sie sich ein wenig von der Verwendung von normalem Javascript oder JSX unterscheidet Verwendung von normalem Javascript oder Unser Stil ist so gut wie fertig. Aber eine Sache, die man beachten und beachten sollte, über die ich zuvor mit dem Staat gesprochen habe. Wir wollen darüber nachdenken, wo der Staat in dieser Anwendung lebt , weil wir drei oder vier verschiedene Teile haben . Hier haben wir den Eingabebereich, in dem der Benutzer das Trinkgeld auswählen und die Anzahl der Personen oder den Gesamtrechnungsbetrag eingeben kann das Trinkgeld auswählen und . Dann haben wir die Ausgabe, die uns den Trinkgeldbetrag und die Gesamtkosten pro Person, den Betrag des Trinkgeldes pro Person und die Kosten pro Person anzeigt. Dann haben wir hier eine Reset-Taste. Damit das alles funktioniert, muss der Staat etwas, nun ja, nicht unbedingt globalisiert sein , sondern auf einer höheren Ebene verfügbar sein, sondern auf einer höheren Ebene verfügbar zwischen diesen beiden Komponenten hin- und hergeleitet zu werden Ich werde versuchen, dies nur mit dem normalen Reaktionsstatus zu tun nur mit dem normalen Reaktionsstatus Wenn das keine geeignete Lösung zu sein scheint, wir zu so etwas wie Stand übergehen. Ich versuche, Reduct zu vermeiden , weil es einfach so viel Boilerplate gibt einfach so viel Boilerplate und es sich um ziemlich einfache Apps handelt Mal sehen, ob wir das mit ein paar einfachen Lösungen schaffen können paar einfachen Meiner Meinung nach muss ich die Gesamtrechnung, den Prozentsatz des Trinkgeldes und die Anzahl der Personen von links nach rechts weiterleiten den Prozentsatz des Trinkgeldes und die Anzahl der . Ich denke, es muss sich hier im oberen Bereich des Trinkgeldrechners befinden. Lassen Sie uns weitermachen und das hier im Tip Calculator umsetzen. Ich werde damit beginnen , ein paar Variablen zu definieren. Ich werde sagen, sagen wir, Gesamtrechnung. Ich würde sagen, die Gesamtsumme der Rechnung entspricht dem Bundesstaat, was aus React importiert wird Wir werden es auf Null initialisieren. Nun eine Sache mit Typoskript Wir können tatsächlich einen Typ hinzufügen und angeben, dass es sich um einen Zahlentyp handeln muss Da Sie nun auch Null eingeben, wird daraus abgeleitet, dass es sich um einen Zahlentyp handeln muss Wir erhalten hier eine Fehlermeldung, weil wir den Client hier nicht verwendet haben , weil das nur der nächste GS-Fehler nichts mit Typoskript zu tun, aber wir können den Typ angeben, dass diese Rechnung einen Zahlentyp haben muss. Der Betrag muss eine Zahl sein, damit wir tatsächlich Berechnungen durchführen können. Das ist einer der Punkte an denen wir anfangen, Typoskript zu verwenden Und Sie werden sehen, wie sich das auf unsere auswirkt, also haben wir dasselbe für „Lassen Sie uns den Prozentsatz des Trinkgeldes festlegen“, Prozentsatz Das wird auch eine Zahl sein. Ja, es wird eine Zahl sein und dann eine Anzahl von Leuten. Ja, wir machen noch einen. Ich sage Anzahl der Personen, festgelegte Anzahl von Personen. Und wieder geben Sie an, dass Sie angeben und angeben , dass wir es auf Null initialisieren werden, nur damit wir mit einem leeren Zettel beginnen Ordnung, jetzt, wo wir diese Variablen initialisiert haben, wollen wir weitermachen und sie in unserer App für meine Kosteneingabe verwenden unserer App für meine Kosteneingabe Ich möchte nun diese Parameter der Gesamtrechnung übergeben und auf Rechnung, Gesamtprozentsatz, Gesamtprozentsatz festlegen, Gesamtzahl der Personen festlegen, Anzahl der Personen festlegen, auf die Kosteneingabe Weil das Auswirkungen auf das haben wird , was passiert. Jetzt gibt es tatsächlich zwei Möglichkeiten, wie wir das tun können. Wir könnten beide weitergeben oder wir könnten die Funktionen in einem Taschenrechner definieren. Lassen Sie mich damit beginnen, einfach die Anfangsvariable zu übergeben . Sagen wir die Gesamtrechnung. Gesamtrechnung, Trinkgeld pro Prozent, Prozentsatz entspricht Trinkgeld pro Prozent und Anzahl der Personen entspricht Anzahl der Sie sehen, ich erhalte hier bereits eine Fehlermeldung , weil uns das Typoskript mitteilt , dass wir die Eigenschaft nicht wirklich auf der Komponente selbst haben die Eigenschaft nicht wirklich auf der Komponente Das ist also einer der Vorteile von Typoskript. Sie können nicht einfach zufällige Dinge weitergeben und erwarten, dass es funktioniert. Sie müssen tatsächlich Typoskript verwenden. , Sie müssen angeben Ich sollte sagen, Sie müssen angeben, welche Typen Sie erwarten. Wenn ich hier zufällig die Kosten eingegeben habe und die Gesamtrechnung importiere, nehme ich den Prozentsatz des Trinkgeldes und auch die Anzahl der Personen auf. Nochmals, wenn es sich um eine reguläre React-Anwendung handelt, könnten Sie diese einfach so einfügen. Aber da es sich nicht um eine reguläre React-Anwendung handelt, handelt es sich nicht nur um eine Javascript-Anwendung, ich sollte sagen, um eine React-Anwendung. Sie werden sehen, dass hier tatsächlich ein Fehler angezeigt wird. Wir sagen zum Beispiel, dass das verbindliche Element Anzahl von Personen implizit einen beliebigen Typ hat Und wie Sie sich früher erinnern, haben wir über jeden Typ gesprochen, wir wollen nicht unbedingt nur einen generischen Typ haben Was wir tun wollen, ist, diese Variablen gezielt einzugeben. Lassen Sie mich Ihnen zeigen, wie wir das machen werden. Die Art und Weise, wie wir das tun werden , besteht darin etwas zu erstellen, das als Interface bezeichnet wird. Eine Schnittstelle ist im Grunde eine Möglichkeit, ein Skript zu schreiben, damit wir es einem Typskript mitteilen können. Hey, ich erwarte, dass diese Variablen in diesen Eigenschaften vorkommen und ich möchte, dass sie von bestimmten Typen sind, und das sind die Typen, die ich erwarte. Alles andere als das, deklarieren Sie bitte einen Fehler. Ich werde es erstellen, ich werde es Requisiten nennen. Du kannst es nennen, wie du willst Und ich werde diese verschiedenen Eigenschaften skizzieren. Ich werde Gesamtrechnung sagen. Es wird eine Zahl sein. Ich werde den Prozentsatz des Trinkgeldes sagen. Es wird eine Zahl als eine Anzahl von Menschen sein. Es wird so sein, dann werde ich dem Typoskript sagen , dass Sie all diese Karten verwenden können, diese Schnittstelle, um die Art der Pflanzen zu ermitteln. Und du wirst hier sehen, dass ich es nicht mehr habe, die Dinge funktionieren soweit. Das Letzte, was wir jetzt tun müssen, ist, dies mit den tatsächlichen Standorten in unserer App zu verbinden. Was die Textfield-Eigenschaft angeht, glaube ich, dass es einen Wert gibt, den wir verwenden können Ich glaube, es heißt Wert. Lass mich nachschauen. Lass uns zur API gehen. Ich bin mir ziemlich sicher, dass es wie eine normale Eingabe ist, aber ich möchte sichergehen, dass wir keine fehlerhaften Fehler bekommen In Ordnung, ja, ich denke, wir haben einfach Wert gelegt. Versuchen wir es mit dem Gesetz. Wir werden sagen, der Wert entspricht der Gesamtrechnung. Wir sagen, das checken Sie hier aus. Fantastisch. Also bekommen wir 0$ Perfect. Wir machen das einfach für alle drei Prozent Trinkgeld. Der Prozentsatz wird etwas anders sein, aber für das letzte Textfeld sagen wir, dass der Wert der Anzahl von entspricht Dort haben wir eine Anzahl von Leuten, die auf Null gesetzt sind. Perfekt. Wir sind startklar. In diesem Sinne möchte ich als Nächstes ein Set zusammenstellen, oder? Wenn sich der Wert in diesen Eingaben ändert, wollen wir eine Funktion auslösen. Lass uns weitermachen und wir werden diese Funktion ausschreiben. Und wir können diese Funktion tatsächlich in den Trinkgeldrechner schreiben oder wir können sie in die Kosten eintragen. Spielt keine Rolle, hängt nur davon ab, was für uns ist. Wenn ich weitermache und es in die Kosteneingabe schreibe, kann ich sagen, dass ich das Set weitergeben muss. Ich möchte den Setter bestehen. Möchte ich dir nur eine Zufallsfunktion übergeben Wir werden den Setter übergeben, weil ich glaube, ich werde sauberer u. okay sein , und dann wenn sie uns eine ähnliche Reihe von Fehlern Ja, wir geben sie einfach hier ab, und dann gebe ich sie hier ab Dann besteht der Unterschied darin, dass wir tatsächlich bestehen, dass Klammern gleich Und so teilt man Typescript mit, dass es sich um eine Funktion handelt, die wir gerade durchgehen die Im Grunde genommen, wenn die Funktion so etwas wie ein R annehmen würde, das wäre zum Beispiel nur die Typnummer, dann könnten wir das auch spezifizieren Es ist völlig in Ordnung , es vorerst leer zu lassen. Aber wir könnten den Typ bei Bedarf definitiv angeben. Und siehe da, wir bekommen hier schon einen Fehler. Es ist eigentlich nicht in der Lage , seinen Typ auf void zu setzen, wir müssen es auf diesen Typ setzen. Es ist eigentlich gut. Es gibt uns genau den Typ, den wir verwenden sollen. Wenn es eine reguläre Funktion wäre, könnten wir den Typ void verwenden. Da es sich jedoch um Aktionen mit festgelegtem Status handelt, müssen wir die sehr spezifischen Typen verwenden , die sie uns geben. Das ist in Ordnung, wir importieren einfach diese Typen und dann sollten wir loslegen können. Fantastisch, Tolle Sache mit Typoskript. Es wird dir sagen, welche Typen importiert werden. Ordnung, jetzt wollen wir für unser Textfeld sagen, wir wollen bei Änderung sagen, wir wollen bei Änderung, wir wollen die Gesamtrechnung als Wert festlegen. Lassen Sie mich hier eine Funktion erstellen, die besagt wir eine Rechnung mit ständiger Aktualisierung einreichen werden, was das Ereignis sein wird. Ich sage, Set Bill wird Targetvalue sein Das wird die Art und Weise sein, wie wir uns etwas schnappen können oder es tatsächlich tun Das alles müssen wir eigentlich nicht tun. Tut mir leid. Wir können einfach auf der Rechnung mit dem Wechselgeld sitzen, wir geben einfach den Sarge-Wert Und es sollte in der Lage sein, sie einfach zu schnappen. Es sollte in der Lage sein, einfach den Wert von E zu übernehmen, was wie das Ereignis ist, es wartet auf den Argumenttyp von Stamm kann nicht dem Parametertyp Zahlen zugewiesen Sag mir, dass der Wert, den ich zurückerhalte , eigentlich eine Zeichenfolge ist, keine Zahl. Aber was ich tun kann, ist es einfach in eine Zahl umzuwandeln. Sag ihm, dass es eine Zahl sein wird , die diese Art von Fehler behebt. Manchmal ein bisschen nervig. Sie müssen viele kleine Dinge ändern, um sicherzustellen, dass Sie keine Tippfehler bekommen. Aber ich denke, es lohnt sich, denn am Ende gibt es 57 ein, dann die Zahl im Bundesstaat, ich meine, wir können sie hier nicht sehen, aber die Zahl im Bundesstaat wäre 57, was großartig ist. Das ist also startklar. Also gut, wir haben das eingerichtet. Lass uns das Gleiche für hier tun. Anstatt der Gesamtrechnung sagen wir, setzen Sie die Anzahl der Personen auf dasselbe fest, den Zielwert. Wenn sich dieser Wert ändert, ändern wir die Anzahl der Personen. Ich frage mich, ob Sie zum Standardwert wechseln , ob das einen Unterschied macht. In Ordnung, wir machen es vorerst einfach zu einem günstigen Preis. In Ordnung, also wir haben die beiden fertig. Der letzte, den ich bearbeiten möchte, ist der Prozentsatz, den wir auf zwei Arten handhaben müssen. Im Grunde genommen, wenn ein Benutzer ähnliche Änderungen vornimmt , gibt er hier etwas in das benutzerdefinierte Textfeld ein. Und ich gebe es tatsächlich, hat es ein Etikett? Ich denke, es braucht einen Wert oder ein Standardwert entspricht einem benutzerdefinierten Wert pro Prozentsatz Jetzt ein bisschen prozentual, 1.000% Wenn ein Benutzer hier entweder etwas eingibt oder hier auf eine Schaltfläche klickt, müssen wir sicherstellen, dass der prozentuale Prozentsatz entsprechend aktualisiert wird Was ich tun möchte, ist entweder beim Klicken zu sagen, naja, es spielt keine Rolle, es ist so, wir listen für beide auf. Aber wenn auf einen geklickt wird, ändert sich der Wert, wenn zu dieser Zahl etwas hinzugefügt wird, das sich ändert . Was auch immer zuletzt passiert, ändert sich Beim Klicken werde ich eine On-Click-Funktion erstellen. Wir werden sagen, beim Klicken werden wir sagen, dass Prozentsätze in Prozent ausgedrückt werden. Und es gibt uns denselben Fehler, aber dieses Mal ist es richtig, uns denselben Fehler zu geben, weil wir gesagt haben, dass es sich um eine Zeichenfolge handelt. Was ich tatsächlich tun werde, ist diese in Objekte umzuwandeln. Ich sage Prozent, und dann ist die tatsächliche Multiplikationsmenge, die wir verwenden würden , 0,05. Und so werden wir dieses Problem lösen Wir haben unsere Zeichenfolge und dann haben wir auch unsere tatsächliche Zahl , die wir verwenden können Das sollte eine ziemlich einfache Lösung sein. Das werde ich sagen. Und dann muss der Schlüssel jetzt Prozent sein. Oh, Ash. Eigentlich war das nicht der richtige Weg, um diesen prozentualen Titel zu bekommen. Dieser Prozentsatz, das hätte ich tun sollen. In Ordnung. Tut mir leid. Lass mich das nur ganz schnell in Ordnung bringen. Ordnung. Fantastisch. Sagen wir, der prozentuale Titel ist der Schlüssel, dann ist der Prozentwert der Betrag und dann ist der prozentuale Titel was im Hintern angezeigt wird. Das Problem wurde dort behoben. Jetzt haben wir all diese Dinge festgelegt. Als letztes muss die Textdatei eingestellt werden. Wir leihen uns hier einfach die Änderungsfunktion aus, prozentuale Basis, alles, was wir vom Zielwert bekommen Ja, in dem Sinne sollten wir gut sein. Ich gehe zurück zum Tip-Rechner und wir können testen. Um zu sehen, ob das funktioniert, können wir Console Dot Log sagen. Nehmen wir an, der Prozentsatz der gesamten Rechnung und die Anzahl der Personen protokollieren diese Daten in der Konsole und überprüfen sie in unserer Konsole. Im Moment sind sie alle Null, was Sinn macht , weil wir sie standardmäßig auf Null gesetzt haben. Wenn ich dann sage, dass die Gesamtrechnung 100 ist, werden Sie sehen, dass sich die erste Zahl ändert. ich einfach zehn auswähle, bekommt es 0,1, was wir erwarten, wenn ich fünf Personen hinzufüge, die letzte ändert sich, sodass wir wissen, dass sie tatsächlich richtig funktioniert. Bereit zu gehen. In diesem Sinne werde ich dieses Konsolenprotokoll vorerst als großartig entfernen . Wir wissen also, dass die Informationen korrekt an den Trinkgeldrechner weitergegeben werden, sodass die Dinge tatsächlich korrekt ablaufen. Nun, der Grund, warum ich den Trinkgeldrechner vorhin nicht mit all diesen kleinen Funktionen überhäufen wollte Trinkgeldrechner vorhin nicht mit , weil Sie jetzt ein paar Funktionen innerhalb des Trinkgeldrechners erstellen werden. Wir müssen berechnen, wie hoch der Trinkgeldbetrag pro Person sein sollte und wie hoch der Gesamtbetrag pro Person sein sollte Um das zu tun, müssen wir zwei Funktionen erstellen. Wir sagen ständig, hol dir pro Person Trinkgeld und dann erstellen wir eine weitere. Holen Sie sich den Gesamtbetrag pro Person. Wir können das hier tun oder wir können es als Kosteneingabe tun . Es ist nicht wirklich wichtig. Aber wenn wir das hier machen, dann müssen wir nicht noch ein paar zusätzliche Requisiten in die Rechnungsausgabe einbauen, sollte ich sagen Wenn ich Stufe bekomme oder wir es vielleicht genauer untersuchen wollen , ja, vielleicht wollen wir es tun, tut mir leid Machen wir das bei der Rechnungsausgabe, nur um die Dinge sauber zu halten. Ordnung, also wir werden diese beiden hier erstellen, aber was wir tun müssen, ist drei Requisiten an die Rechnungsausgabe weiterzugeben drei Requisiten an die Rechnungsausgabe So wie wir eine Schnittstelle zur Kosteneingabe hatten. Ich werde eine Schnittstelle für die Rechnungsausgabe erstellen. Kopieren Sie das einfach und fügen Sie es ein, holen Sie sich diese von hier, dort. Dann sage ich jetzt in der Funktion hier Trinkgeld pro Person. Das Trinkgeld pro Person wäre die Summe der Rechnung multipliziert dem Prozentsatz des Trinkgeldes geteilt durch die Anzahl der Personen geteilt durch die Anzahl der Personen. Das wird die Person mit dem Trinkgeld sein. Wir können diesen Betrag angeben oder wir brauchen eigentlich keine ganze Funktion zu erstellen, wir sagen einfach, gleichbleibendes Trinkgeld pro Person, Person ist gleich, los geht's Und dann sagen wir, das ist das Trinkgeld pro Person, das ist Trinkgeld pro Person Ja, wir haben gerade gesagt, dass das Trinkgeld pro Person die Gesamtrechnung multipliziert mit dem Prozentsatz des Trinkgeldes geteilt durch die aktuelle Anzahl der Personen ist dem Prozentsatz des Trinkgeldes geteilt durch . Es ist keine Zahl, weil wir diese Zahlen nicht haben. Aber wir werden das in nur 1 Sekunde beheben. Alles klar, als Nächstes machen wir die Summe pro Person. Summe pro Person ergibt das Trinkgeld pro Person Die Gesamtrechnung geteilt durch die Anzahl der Personen plus das Trinkgeld pro Person. Auf diese Weise können wir das tatsächlich für unsere zweite Funktion verwenden. Wir sagen, das wird unser Gesamtbetrag pro Person, pro Person sein. Das ergibt Sinn. Gesamtrechnung nach der Anzahl der Personen plus der Person, die das Trinkgeld zahlt. Fantastisch. Im Moment bekommen wir eine Nummer. Ich frage mich, ob es nein ist, sie sollten reinkommen, da die Zahlen angegeben werden können. Ich frage mich, ob sie aus irgendeinem Grund nicht als Nummer reinkommen . Mal sehen, was passiert, wenn ich die Nummer hier ändere. Oder, weißt du, es könnte einfach sein, ich glaube, ich weiß, wo das Problem liegt. Wir übergeben die Variablen nicht wirklich, also würde das dort wahrscheinlich zu einem ziemlich, ziemlich großen Problem führen. Ordnung, großartig. Also haben wir es schon angeschlossen Also ja, wenn Sie hier sehen können, dass das Trinkgeld auf 10% gesetzt wird, würde das Trinkgeld am Ende 2$ pro Person betragen Und dann würde der Gesamtbetrag pro Person dann 22$ betragen, was Sinn macht 100$ geteilt durch fünf Personen wären 20$ pro Person plus 102$ Trinkgeld 22$. Wir können hier ein bisschen Formular zusammenrechnen , nur damit es etwas sauberer aussieht Wir können hier einfach ein 1-Dollar-Zeichen hinzufügen. Fügen Sie 1$ hinzu und melden Sie sich hier an. Sie können es ändern. Schau mal, ob es sich ändert, wenn ich auf die Taste drücke, ob sich dort die Mengen ändern. Das Letzte, was wir wahrscheinlich tun könnten, ist einfach unseren Reset-Knopf anzuschließen. Setze einfach alles auf Null zurück. Also ja, wie Sie sehen können, unterscheidet sich Typescript nicht so sehr von Es ist ziemlich ähnlich in der Art und Weise, wie Sie in einer React-Anwendung oder nur in einer einfachen Javascript-Typoskript-Web-App arbeiten würden einer React-Anwendung oder nur in einer einfachen Javascript-Typoskript-Web-App Der einzige Unterschied besteht darin, die Fehler erkennen zu können , bevor sie Also wie hier, der Fehler war, dass wir nicht einmal die Prüfung bestanden hatten. Wenn das eine Javascript-Anwendung wäre, hätten wir vielleicht zehn, 50 Minuten damit verbracht , das Problem zu debuggen und herauszufinden, was das Problem ist Das Tolle an Typoskript ist, dass es dir einfach erlaubt, hey, hier liegt das Problem Diese schnelle Fehlerbehandlung, bevor Sie Ihre Anwendung starten und die Dinge nicht funktionieren, Sie wissen es nicht. Ja, so richtet man ein Typskript ein, reagiert auf eine Anwendung, hoffentlich war das nützlich. 12. Schlussbemerkung: Fazit, über das wir in diesem Video viel gesprochen haben. Von den Grundlagen von Typoskript bis hin zum Aufbau Ihrer eigenen Typoskript-Web-App Zukunft sollten Sie in der Lage sein, mithilfe von Typoskript Ihre eigenen Websites von Grund auf neu zu erstellen Ihre eigenen Websites von Denken Sie daran, etwas nachzuschlagen , wenn Sie sich nicht sicher sind Ich würde gerne sehen, wie sich Ihre Website Hinterlassen Sie also bitte einen Link zu Ihrem Code, einem Screenshot oder der gehosteten Website im Tab Projekt und Ressourcen unten, damit ich all die harte Arbeit sehen kann, die Sie geleistet haben. Ich lese jeden Kommentar, jede Bewertung und sehe mir alle eingereichten Projekte an. Wenn Sie also Fragen haben, Sie gerne einen Kommentar im Bewertungsbereich unten hinterlassen oder mich direkt kontaktieren. Sie auf meiner Profilseite Weitere Informationen dazu finden Sie auf meiner Profilseite. Wenn du mehr über Programmieren erfahren möchtest, schau dir die anderen Videos an, die ich auf meiner Profilseite habe. Ich habe auch Videos zu Next GS und React auf meinem YouTube-Kanal und auf meiner Website verfügbar. Ich werde sie unten und auf meinem Profil verlinken falls du daran interessiert bist, sie ebenfalls zu erfahren, und ich werde sie im nächsten Video sehen.