1 00:00:00,000 --> 00:00:00,500 2 00:00:00,500 --> 00:00:10,960 [Musikwiedergabe] 3 00:00:10,960 --> 00:00:12,960 ROGER ZURAWICKI: Hallo, mein Name ist Roger Zurawicki, 4 00:00:12,960 --> 00:00:16,410 und ich werde Abdeckung die CS50 Meteor Seminar. 5 00:00:16,410 --> 00:00:21,520 Meteor ist ein neues Rahmen auf die neue Art von Web gewidmet, 6 00:00:21,520 --> 00:00:25,220 nicht der PHP-Anforderungen senden Rücken und Art her 7 00:00:25,220 --> 00:00:29,070 Web sahen wir in der PHPP-Set, aber die Dynamik JavaScript 8 00:00:29,070 --> 00:00:31,370 Teile der Bahn. 9 00:00:31,370 --> 00:00:36,260 Things Meteor tun können beinhaltet Live-Aktualisierung 10 00:00:36,260 --> 00:00:42,380 und sofort kommunizieren zwischen Nutzern der gleichen Website. 11 00:00:42,380 --> 00:00:46,420 >> Bei diesem Seminar haben wir Code gehostet auf meinem GitHub. 12 00:00:46,420 --> 00:00:49,690 Sie können auf diese URL zu gehen und herunterladen. 13 00:00:49,690 --> 00:00:53,085 Wenn Sie wissen, wie Sie Git verwenden, Sie können das Repository zu klonen. 14 00:00:53,085 --> 00:00:55,460 Wenn Sie nicht wissen, wie zu bedienen Git oder nicht verwendet GitHub, 15 00:00:55,460 --> 00:00:57,030 Das ist völlig in Ordnung. 16 00:00:57,030 --> 00:01:00,480 Ich werde dich sehr schnell zeigen wie wir auf GitHub zu gehen, 17 00:01:00,480 --> 00:01:03,604 und es gibt eine Option, um laden Sie eine zip recht. 18 00:01:03,604 --> 00:01:06,770 Wenn Sie dieses Verzeichnis herunterzuladen, kann begann das Spiel mit unseren Code zu bekommen. 19 00:01:06,770 --> 00:01:10,200 20 00:01:10,200 --> 00:01:13,190 >> Mehr Informationen über Meteor kann meteor.com finden. 21 00:01:13,190 --> 00:01:16,580 Im Seminar Ordner, habe ich eigentlich haben einige Meteor Projekte, die wir verwenden können. 22 00:01:16,580 --> 00:01:20,380 23 00:01:20,380 --> 00:01:26,400 Einer der Ordner wir haben unsere Seminar-Projekt ist die todos App. 24 00:01:26,400 --> 00:01:28,780 Also, wenn ich in mir, haben Meteor installiert. 25 00:01:28,780 --> 00:01:35,690 Also, um es auszuführen, brauche ich nur geben Meteor, und Meteor installieren. 26 00:01:35,690 --> 00:01:38,310 Wie Sie sehen können, müssen wir sicherzustellen, dass wir Meteor installiert. 27 00:01:38,310 --> 00:01:40,562 Also ich bin gerade dabei, führen Sie es noch einmal 28 00:01:40,562 --> 00:01:42,520 um sicherzustellen, dass Meteor richtig installiert ist. 29 00:01:42,520 --> 00:01:46,370 30 00:01:46,370 --> 00:01:48,450 >> Während ich Meteor Installation, kann ich Ihnen zeigen, 31 00:01:48,450 --> 00:01:53,760 einige Live-Demos von Meteor Websites Go-Live im Moment im Internet. 32 00:01:53,760 --> 00:01:57,990 Ich habe eine Demo von unserer App. 33 00:01:57,990 --> 00:02:00,740 Sie können ihn unter der folgenden URL zugreifen. 34 00:02:00,740 --> 00:02:06,350 Dies ist die App zu tun, dass wir haben in unserem Seminarverzeichnis. 35 00:02:06,350 --> 00:02:09,940 Die URL ist rozu-rabbit.meteor.com. 36 00:02:09,940 --> 00:02:14,782 Du wirst sehen, dass Meteor tatsächlich hosten Ihre Meteor Projekte kostenlos. 37 00:02:14,782 --> 00:02:17,490 Und am Ende des Seminars, Sie in der Lage, dies auch zu tun. 38 00:02:17,490 --> 00:02:20,550 39 00:02:20,550 --> 00:02:22,160 >> Dies ist eine Liste zu tun App. 40 00:02:22,160 --> 00:02:27,740 Und Sie können sich anmelden, erstellen Konten, und fügen Sie Aufgaben. 41 00:02:27,740 --> 00:02:30,020 Sie können ein Konto wie so erstellen. 42 00:02:30,020 --> 00:02:33,050 43 00:02:33,050 --> 00:02:35,850 Und jetzt, wenn Sie eine haben, Konto können Sie Aufgaben hinzufügen. 44 00:02:35,850 --> 00:02:42,780 Zum Beispiel kann eine der Aufgaben I Möglicherweise müssen Sie gehen abholen meine Wäsche. 45 00:02:42,780 --> 00:02:45,160 Und wenn Sie auf diese sind Website online, werden Sie 46 00:02:45,160 --> 00:02:49,790 tatsächlich sehen diese Aufgabe Ihren Computer in Echtzeit. 47 00:02:49,790 --> 00:02:53,760 >> Ich kann Ihnen eine schnelle Demo dies durch Öffnen rozu-Kaninchen- 48 00:02:53,760 --> 00:02:56,700 in einem anderen Register mit der gleichen URL. 49 00:02:56,700 --> 00:03:00,360 Und wir sehen, dass die gleichen Daten kommt. 50 00:03:00,360 --> 00:03:02,240 Wir können das Programm auch in einen anderen Browser. 51 00:03:02,240 --> 00:03:03,420 Sagen, dass ich es laufen in Safari. 52 00:03:03,420 --> 00:03:04,720 So können wir sind nicht angemeldet. 53 00:03:04,720 --> 00:03:07,750 54 00:03:07,750 --> 00:03:11,060 Wir haben also die gleiche Meteor app, und nachdem es geladen, 55 00:03:11,060 --> 00:03:13,910 wir werden die gleichen Daten sehen wir haben in der ersten. 56 00:03:13,910 --> 00:03:16,710 Wie Sie sehen können, bin ich nicht hier angemeldet. 57 00:03:16,710 --> 00:03:20,000 Und wenn das Publikum überprüft Daten, aktualisiert er auf allen Browsern 58 00:03:20,000 --> 00:03:20,910 gleichzeitig. 59 00:03:20,910 --> 00:03:23,740 Dies ist einer der wirklich coole Features zu Meteor. 60 00:03:23,740 --> 00:03:27,700 Mit fast keine Arbeit, die Sie eine Live-Aktualisierung App 61 00:03:27,700 --> 00:03:31,240 dass Änderungen an allen Ihre Geräte auf einmal. 62 00:03:31,240 --> 00:03:36,690 >> Wenn ich das Kontrollkästchen hier in meine Liste zu tun, müssen wir, 63 00:03:36,690 --> 00:03:41,230 in meinen anderen Chrome-Browser, Der Artikel ist abgehakt. 64 00:03:41,230 --> 00:03:42,605 Und in diesem Fall sofort. 65 00:03:42,605 --> 00:03:46,340 66 00:03:46,340 --> 00:03:47,280 In Ordnung. 67 00:03:47,280 --> 00:03:52,730 So wie es aussieht Meteor Installation ist nun fertig. 68 00:03:52,730 --> 00:03:57,000 So, jetzt zurück zu den lassen todos App und führen diese vor Ort. 69 00:03:57,000 --> 00:04:01,599 >> Wenn Sie einen Meteor-Projekt haben, können Sie führen Sie es einfach mit dem Befehl Meteor. 70 00:04:01,599 --> 00:04:03,640 Sobald Sie diese, Meteor tun werden einige Vorbereitungen zu tun 71 00:04:03,640 --> 00:04:06,120 um sicherzustellen, dass alle Ihr Code in Schach. 72 00:04:06,120 --> 00:04:12,440 Und dann werden sie Ihnen sagen, dass die Projekt ist bereit, serviert werden. 73 00:04:12,440 --> 00:04:17,750 Möglicherweise müssen Sie damit Ihre Firewall, wenn Ihr Computer blockiert dich. 74 00:04:17,750 --> 00:04:22,440 >> Also, was sagt mir Meteor im Moment ist, dass auf dieser Website 75 00:04:22,440 --> 00:04:26,100 lokal auf meinem Computer, die ich sehen kann was das Meteor-Projekt ist. 76 00:04:26,100 --> 00:04:29,290 Beachten Sie, dass im Moment ist meine App nicht zugänglich im Internet. 77 00:04:29,290 --> 00:04:35,170 Wir decken, wie Sie Ihre Meteor bringen App auf einer aktiven Seite ein wenig später. 78 00:04:35,170 --> 00:04:40,510 Also ich bin gerade dabei, diese zu kopieren URL jetzt und gehen Sie in Google Chrome. 79 00:04:40,510 --> 00:04:42,600 >> Und das ist das zu tun Liste aus dem Beispiel. 80 00:04:42,600 --> 00:04:46,080 Sie können sehen, sie durchgeführt ein paar mehr Features hier. 81 00:04:46,080 --> 00:04:49,210 Wir haben verschiedene Registerkarten, die wir haben die gleichen Kontofunktionen, 82 00:04:49,210 --> 00:04:52,141 und wir können neue Listen hinzuzufügen. 83 00:04:52,141 --> 00:04:54,140 Nun, einer der wirklich cooles Feature über Meteor 84 00:04:54,140 --> 00:04:57,450 ist, dass nicht nur das kann arbeiten an Ihren Web-Browser, 85 00:04:57,450 --> 00:05:00,030 aber Sie können auch erstellen native iPhone und Android 86 00:05:00,030 --> 00:05:02,990 apps durch ein Tool namens PhoneGap. 87 00:05:02,990 --> 00:05:06,740 >> So einige Projekte wird kommen für die Ausführung von vorkonfigurierten 88 00:05:06,740 --> 00:05:08,700 auf iOS, wie dieser todos App. 89 00:05:08,700 --> 00:05:14,780 Also alles, was ich tun muss, um es in iOS laufen ist Typ Meteor, ausführen und dann iOS. 90 00:05:14,780 --> 00:05:17,540 Und wenn ich das tue, Meteor wird das Paket erneut vorzubereiten. 91 00:05:17,540 --> 00:05:21,670 Und dann, wenn es fertig ist, wird es laden Sie die iOS Simulator auf mein Kommando. 92 00:05:21,670 --> 00:05:24,745 Hinweis Sie können nur laufen iOS-Apps wenn Sie einen Mac-Computer. 93 00:05:24,745 --> 00:05:27,650 94 00:05:27,650 --> 00:05:30,730 Sie können Ihre Anwendungen auf ausführen Android auf allen Plattformen. 95 00:05:30,730 --> 00:05:34,070 96 00:05:34,070 --> 00:05:38,290 >> So, jetzt können Sie sehen, dass mein iPhone Simulator kam auf meinem Bildschirm. 97 00:05:38,290 --> 00:05:40,370 Und in nur einem Augenblick, es wird mit der App zu laden. 98 00:05:40,370 --> 00:05:46,070 99 00:05:46,070 --> 00:05:48,490 Wenn wir es nur ein bisschen verkleinern auf den Bildschirm passen, 100 00:05:48,490 --> 00:05:50,780 wir sehen wir unsere iPhone-App haben. 101 00:05:50,780 --> 00:05:53,220 Und nur damit wir nicht verwirrt, wir machen 102 00:05:53,220 --> 00:05:59,790 sicher, dass wir auf der gleichen Website, der lokale Host 3000. 103 00:05:59,790 --> 00:06:03,490 >> Also hier ist ein Beispiel, der Meteor App die ich habe, 104 00:06:03,490 --> 00:06:08,770 die todos App läuft sowohl auf ein Telefon und einen Web-Browser. 105 00:06:08,770 --> 00:06:10,770 Und wenn ich Sachen ändern im Web-Browser, 106 00:06:10,770 --> 00:06:12,675 es geht sofort zum Telefon. 107 00:06:12,675 --> 00:06:16,500 Und ich kann etwas auf dem Telefon löschen, und es ändert sich im Web-Browser. 108 00:06:16,500 --> 00:06:21,050 >> Jetzt, in der Regel auf native erstellen Handy-App für iOS oder Android, 109 00:06:21,050 --> 00:06:26,090 Sie Java oder wissen müssen, Objective C. Die Technologie Meteor Anwendungen 110 00:06:26,090 --> 00:06:29,240 , damit JavaScript als laufen Ihre Anwendung wird als PhoneGap. 111 00:06:29,240 --> 00:06:31,320 Was Ihre Anwendung wesentlichen ist ein Web-Browser. 112 00:06:31,320 --> 00:06:34,500 Und kümmert sich um alle Meteor die kniffligen Teilen beteiligt 113 00:06:34,500 --> 00:06:39,820 zum Ziel, dieser Web-Browser Ihr iPhone oder Ihr Android-Gerät. 114 00:06:39,820 --> 00:06:42,210 Sie können sehen, dass die Bedienoberfläche ist glatt, 115 00:06:42,210 --> 00:06:45,290 und es sieht aus und fühlt sich sehr ähnlich wie eine native App. 116 00:06:45,290 --> 00:06:48,620 Beachten Sie, dass, wenn ich zu Hause Jetzt Bildschirm bekomme ich auch ein Symbol. 117 00:06:48,620 --> 00:06:50,880 Dies ist nicht eine Website wie Sie in Safari finden würden. 118 00:06:50,880 --> 00:06:51,860 Dies ist eine eigene App. 119 00:06:51,860 --> 00:06:54,130 Sie können die Installation und löschen, wenn Sie möchten. 120 00:06:54,130 --> 00:06:59,500 121 00:06:59,500 --> 00:07:04,436 >> Wir können kurz zeigen, was der Code für diese Art von todos app aussieht. 122 00:07:04,436 --> 00:07:08,260 Wenn Sie in der todos Ordner suchen, Sie werden sehen, es gibt viele Ordner. 123 00:07:08,260 --> 00:07:11,440 Aber im Laufe des Seminars, werden wir 124 00:07:11,440 --> 00:07:14,780 verstehen, was jeder Ordner wird verwendet. 125 00:07:14,780 --> 00:07:17,830 Lassen Sie uns in die Klemme zu gehen, so dass wir können die Dateien ein bisschen besser zu sehen. 126 00:07:17,830 --> 00:07:20,410 >> Ich werde Steuerung drücken C, um den Server zu stoppen, 127 00:07:20,410 --> 00:07:22,770 und jetzt bin ich wieder in der todos App. 128 00:07:22,770 --> 00:07:26,660 Ich habe verschiedene Ordner hier, wie die Client-Ordner, der Server-Ordner. 129 00:07:26,660 --> 00:07:30,500 Und diese Ordner bedeutet einfach, dass alles, was in der Client-Ordner 130 00:07:30,500 --> 00:07:32,630 wird in Ihrem Webbrowser ausgeführt. 131 00:07:32,630 --> 00:07:35,530 Alles in einer Server-Ordner wird auf einem Server ausgeführt. 132 00:07:35,530 --> 00:07:38,100 >> Ich möchte darauf hinweisen, Sie ist das, was wir hatten, 133 00:07:38,100 --> 00:07:42,140 als wir unsere Telefonlauf und unsere Web-Browser, das waren Kunden. 134 00:07:42,140 --> 00:07:45,730 Aber was ist in ein laufendes Terminal, das ist der Server. 135 00:07:45,730 --> 00:07:48,710 Wir haben andere Ordner, wie lib, die Bibliothek-Code ist, 136 00:07:48,710 --> 00:07:51,050 wie Ihr Helfer Funktionen, die Sie 137 00:07:51,050 --> 00:07:53,710 Verwendung auf dem Client und dem Server. 138 00:07:53,710 --> 00:07:55,820 Und dann haben Sie eine öffentliche haben Ordner und Ressourcen 139 00:07:55,820 --> 00:07:59,310 Ordner für immer notwendig Ihre Bilder und andere CSS geladen. 140 00:07:59,310 --> 00:08:02,630 141 00:08:02,630 --> 00:08:09,360 >> Wenn Sie Meteor installiert haben, werden wir fahren Sie mit der Anleitung für Meteor. 142 00:08:09,360 --> 00:08:12,790 Sie können auf diese URL zu gehen, meteor.com/install, 143 00:08:12,790 --> 00:08:17,990 um die Befehlszeile zu erhalten, dass ich Sie zeigten, dass Meteor installiert. 144 00:08:17,990 --> 00:08:20,240 Wir werden durch die erste gehen wenige Schritte, um eine besser 145 00:08:20,240 --> 00:08:22,760 das Gefühl, wie Sie Meteor installieren. 146 00:08:22,760 --> 00:08:28,000 >> Aber zuerst, ich denke es ist wichtig, dass wir schreiben ein wenig JavaScript. 147 00:08:28,000 --> 00:08:32,360 Um Ihnen zu zeigen einige Beispiele, wie unsere Kenntnisse C übersetzt werden 148 00:08:32,360 --> 00:08:34,950 JavaScript, habe ich erstellt ein paar Beispiele. 149 00:08:34,950 --> 00:08:36,940 Sie sind in der js Verzeichnis. 150 00:08:36,940 --> 00:08:41,750 Also, wenn in die Seminare Ordner, den Sie schauen, da ist ein Ordner mit dem Namen js. 151 00:08:41,750 --> 00:08:44,540 Und hier haben wir einige Beispiele. 152 00:08:44,540 --> 00:08:50,120 >> Wir öffnen das erste Beispiel und sehen sehr schnell. 153 00:08:50,120 --> 00:08:53,980 Was wir sehen, ist Ihr Standard- Hallo Welt Befehl. 154 00:08:53,980 --> 00:08:56,520 Sie stellen fest, dass Sie in C haben eine paar Zeilen. 155 00:08:56,520 --> 00:09:00,490 Und als CS50 Schüler wissen, wir brauchen eine Hauptfunktion, 156 00:09:00,490 --> 00:09:05,730 und wir müssen den Standard enthalten I / O-Bibliothek, um printf nennen. 157 00:09:05,730 --> 00:09:09,320 >> Lassen Sie uns, wie Sie JavaScript vergleicht. 158 00:09:09,320 --> 00:09:11,560 Ich werde ex1.js. öffnen 159 00:09:11,560 --> 00:09:14,650 Auskommentiert ist, was die C-Code aussehen würde, 160 00:09:14,650 --> 00:09:17,550 und die Zeile darunter ist alles Sie brauchen, um in Knoten laufen. 161 00:09:17,550 --> 00:09:20,452 Sie eine Hauptfunktion nicht benötigen, können Sie müssen nicht alle Dateien enthalten, 162 00:09:20,452 --> 00:09:21,660 und Sie brauchen nicht, um zurückzukehren. 163 00:09:21,660 --> 00:09:23,810 Sie rufen console.log. 164 00:09:23,810 --> 00:09:26,370 Dies ist das Äquivalent des printf. 165 00:09:26,370 --> 00:09:29,310 >> Und es erfolgt die gleiche Argumente printf würden. 166 00:09:29,310 --> 00:09:33,870 Und, um es auszuführen, anstatt zu rennen machen ex1, 167 00:09:33,870 --> 00:09:38,930 Sie rufen würde Knoten ex1.js. 168 00:09:38,930 --> 00:09:41,830 Sie schreiben Knoten und dann die Datei, und es wird laufen. 169 00:09:41,830 --> 00:09:43,580 Es muss nicht kompiliert. 170 00:09:43,580 --> 00:09:45,970 JavaScript ist eine interpretierte Sprache. 171 00:09:45,970 --> 00:09:49,150 So ist es nicht sein müssen, kompiliert, bevor sie ausgeführt werden. 172 00:09:49,150 --> 00:09:53,450 Wenn ich wollte ex1.c laufen, Ich muss es zuerst, 173 00:09:53,450 --> 00:09:59,160 und dann kann ich die ausführbare Datei ausführen um die gleiche Leistung zu erhalten. 174 00:09:59,160 --> 00:10:02,460 >> Lassen Sie uns schnell decken einige andere JavaScript-Konzepte. 175 00:10:02,460 --> 00:10:04,490 Betrachten wir beispielsweise zwei. 176 00:10:04,490 --> 00:10:14,690 In ex2.js, in ex2.c, können wir sehen, dass wir etwas Code. 177 00:10:14,690 --> 00:10:16,550 Lassen Sie mich schnell gehen eine bessere Texteditor 178 00:10:16,550 --> 00:10:18,400 das wird diese zeigen neue Linien ein bisschen besser. 179 00:10:18,400 --> 00:10:21,760 180 00:10:21,760 --> 00:10:22,380 In Ordnung. 181 00:10:22,380 --> 00:10:24,190 Hier haben wir beispielsweise 2.c. 182 00:10:24,190 --> 00:10:27,360 Hier haben wir verschiedene Arten dass wir den Ausdruck. 183 00:10:27,360 --> 00:10:30,880 Und wie wir wissen, übernimmt printf verschiedene Prozent Argumente 184 00:10:30,880 --> 00:10:34,050 um verschiedene Teile von Daten zuzugreifen. 185 00:10:34,050 --> 00:10:36,840 Wenn wir das zu druck ein String, wir nennen% s. 186 00:10:36,840 --> 00:10:40,390 Wenn wir eine Fließ anrufen möchten Punktnummer, wir riefen% f. 187 00:10:40,390 --> 00:10:45,810 Und es gibt keinen einfachen Weg, um einen Anruf Boolean durch seinen Wert true oder false. 188 00:10:45,810 --> 00:10:50,760 Aber wenn Sie% d verwenden, können Sie eine 0 oder eine 1 für wahr und falsch. 189 00:10:50,760 --> 00:10:53,270 >> JavaScript ist ein bisschen schöner für uns. 190 00:10:53,270 --> 00:10:57,740 In JavaScript schauen wir uns die wenigen Unterschiede gibt es in dieser Datei. 191 00:10:57,740 --> 00:11:05,790 Erstens, stellen Sie fest, dass in C müssen wir initialisieren jede Variable mit einem Typ. 192 00:11:05,790 --> 00:11:06,940 S ist ein char Sterne. 193 00:11:06,940 --> 00:11:08,930 Es ist ein String, und es kann jeder andere Typ sein. 194 00:11:08,930 --> 00:11:10,450 N ist ein Schwimmer. 195 00:11:10,450 --> 00:11:11,780 B ist ein Bool. 196 00:11:11,780 --> 00:11:14,220 >> Aber in JavaScript gibt es dynamische Typen. 197 00:11:14,220 --> 00:11:16,400 Das bedeutet, dass Sie dies nicht tun JavaScript erforderlich erzählen 198 00:11:16,400 --> 00:11:17,860 welche Arten Ihre Variablen werden. 199 00:11:17,860 --> 00:11:22,730 Sie müssen nur sagen var variable, der Name der Variablen, und dann seinen Wert. 200 00:11:22,730 --> 00:11:24,690 So ein var kann alles wirklich sein kann. 201 00:11:24,690 --> 00:11:25,640 Es kann eine Zeichenfolge sein. 202 00:11:25,640 --> 00:11:27,300 Es kann eine Gleitkommazahl sein. 203 00:11:27,300 --> 00:11:28,560 Es kann ein Zeichen sein. 204 00:11:28,560 --> 00:11:31,250 Es kann ein Boolean sein. 205 00:11:31,250 --> 00:11:34,380 Und Konsolenprotokoll funktioniert etwas anders. 206 00:11:34,380 --> 00:11:37,340 Wenn Sie drucken möchten eine Zahl, rufen Sie% d. 207 00:11:37,340 --> 00:11:41,740 Aber die meisten Werte können als Strings gut gedruckt. 208 00:11:41,740 --> 00:11:46,220 >> Laufen wir dies in Knoten um zu sehen, was passieren würde. 209 00:11:46,220 --> 00:11:51,880 Ich kann Knoten ex2.js nennen, und wir printf erhalten 210 00:11:51,880 --> 00:11:56,870 mit den Werten CS50, wie N die Fließkommazahl, 211 00:11:56,870 --> 00:12:00,620 und dann B als Boolean in einen String true konvertiert. 212 00:12:00,620 --> 00:12:03,830 Was ist, wenn wir aus Beispiel 2.c? 213 00:12:03,830 --> 00:12:09,630 Nun, wir haben noch einige mehr Ärger mit printf. 214 00:12:09,630 --> 00:12:13,110 Feststellen, dass die Gleitkomma Nummer muss korrekt formatiert sein, 215 00:12:13,110 --> 00:12:18,120 und dass der Boolean kann nicht einfach als wahr oder falsch angezeigt werden. 216 00:12:18,120 --> 00:12:18,620 In Ordnung. 217 00:12:18,620 --> 00:12:22,680 Jetzt schauen wir uns beispielsweise drei. 218 00:12:22,680 --> 00:12:26,470 Bei beispielsweise drei, zeigen wir wie Sie eine for-Schleife verwenden würden. 219 00:12:26,470 --> 00:12:27,630 In der Tat ist es sehr einfach. 220 00:12:27,630 --> 00:12:31,430 Eines der schönen Dinge über JavaScript ist, dass er C. 221 00:12:31,430 --> 00:12:33,920 Das bedeutet, dass eine Menge des Code wird sehr ähnlich aussehen 222 00:12:33,920 --> 00:12:36,490 und fühlen sich sehr ähnlich. 223 00:12:36,490 --> 00:12:39,220 In einer for-Schleife, die einzige Sache, dass wirklich hier geändert 224 00:12:39,220 --> 00:12:41,840 ist anstelle von int i, var haben wir i. 225 00:12:41,840 --> 00:12:45,470 Wir können immer noch weisen Sie ihm den Wert Null, überprüfen Sie, dass es weniger als fünf, 226 00:12:45,470 --> 00:12:49,390 und erhöhe ihn um eine mit dem Operator ++. 227 00:12:49,390 --> 00:12:56,286 Wir nennen console.log auf i, und dass wird uns zu drucken eine Zahl mit jeder Zeile. 228 00:12:56,286 --> 00:12:58,410 Laufen wir es wirklich schnell zu sehen, was es gibt. 229 00:12:58,410 --> 00:13:02,320 230 00:13:02,320 --> 00:13:03,880 Wir bekommen eine neue Nummer in jeder Zeile. 231 00:13:03,880 --> 00:13:06,920 Eine andere Sache, ich will dich mit console.log merken 232 00:13:06,920 --> 00:13:09,960 ist, dass Sie nicht haben, um zu schreiben Backslash n für die neue Linie. 233 00:13:09,960 --> 00:13:12,480 Console.log gedruckt alles in einer eigenen Zeile. 234 00:13:12,480 --> 00:13:14,585 Das ist ein nettes Feature, dass JavaScript uns gibt. 235 00:13:14,585 --> 00:13:18,440 236 00:13:18,440 --> 00:13:22,600 >> Nun wollen wir erschließen Beispiel vier. 237 00:13:22,600 --> 00:13:28,710 Bei beispielsweise vier, zuerst in der C, fordern wir ein paar Funktionen. 238 00:13:28,710 --> 00:13:33,290 Beachten Sie, dass wir uns das erklären Funktionen, bevor wir sie in Haupt. 239 00:13:33,290 --> 00:13:37,250 Wenn wir Haupt erste und dann hinzufügen und dann hoch, machen sie, 240 00:13:37,250 --> 00:13:39,540 Klang oder GCC würde geben Sie uns eine Fehlermeldung, 241 00:13:39,540 --> 00:13:41,060 daß sie nicht wissen, was hoch ist. 242 00:13:41,060 --> 00:13:42,780 Es ist nicht wissen, welche Zusatz ist. 243 00:13:42,780 --> 00:13:46,480 So in C, müssen Sie wählerisch, das zu sein, Reihenfolge, in der Sie Funktionen aufrufen. 244 00:13:46,480 --> 00:13:49,220 245 00:13:49,220 --> 00:13:51,310 >> Lassen Sie uns, wie Sie können tun dies in JavaScript. 246 00:13:51,310 --> 00:13:56,060 Wir haben verschiedene Dateien, weil es gibt ein paar verschiedene Möglichkeiten, dies zu tun. 247 00:13:56,060 --> 00:13:58,950 Eine Möglichkeit ist ziemlich eine direkte Übersetzung. 248 00:13:58,950 --> 00:14:02,180 Da Funktionen in C Rückgabetypen und JavaScript 249 00:14:02,180 --> 00:14:05,210 weiß nicht wirklich, oder Pflege über welche Art Sie zurückkommen, 250 00:14:05,210 --> 00:14:06,300 Sie schreiben Sie nicht einen Typ. 251 00:14:06,300 --> 00:14:08,100 Stattdessen müssen Sie nur um die Funktion zu schreiben, 252 00:14:08,100 --> 00:14:11,180 und alles ist ziemlich das gleiche wie zuvor. 253 00:14:11,180 --> 00:14:14,630 >> Wenn Sie eine Variable, wie in haben hinzuzufügen, müssen wir nur x und y zu schreiben. 254 00:14:14,630 --> 00:14:16,060 Wir brauchen nicht zu sagen, x eine int. 255 00:14:16,060 --> 00:14:18,940 Wir brauchen nicht zu sagen, y eine int. 256 00:14:18,940 --> 00:14:21,030 Wir kommen mit der gleichen Syntax. 257 00:14:21,030 --> 00:14:24,230 Für hoch, es erklären wir mit funktionieren statt nichtig. 258 00:14:24,230 --> 00:14:26,110 Beachten Sie, dass, ob es ist ungültig oder nicht nichtig, 259 00:14:26,110 --> 00:14:28,380 es ist immer noch alle die gleiche Funktion. 260 00:14:28,380 --> 00:14:32,440 Und wir einfach nicht setzen alles in Klammern, 261 00:14:32,440 --> 00:14:34,690 und es sieht sehr ähnlich wie die C-Code. 262 00:14:34,690 --> 00:14:37,460 Und unten, können wir es unten anzurufen. 263 00:14:37,460 --> 00:14:42,730 >> Betrachtet man beispielsweise 4b, bemerken wir, dass ich ein paar Dinge geändert. 264 00:14:42,730 --> 00:14:45,340 Das einzige, was ich habe mich verändert wenn wirklich ist die Reihenfolge. 265 00:14:45,340 --> 00:14:47,340 Wir haben die gleiche Funktionen, aber jetzt sind sie 266 00:14:47,340 --> 00:14:52,200 erklärt, nachdem sie in gewohnt sind console.log und hohe auf den Leitungen 18, 19. 267 00:14:52,200 --> 00:14:54,740 Wenn Sie dies in C hat, würde einen Fehler aus. 268 00:14:54,740 --> 00:14:56,070 Hier, das funktioniert prima. 269 00:14:56,070 --> 00:15:01,935 Und ich kann es dir zeigen, durch Aufruf Knoten auf 4b Beispiel. 270 00:15:01,935 --> 00:15:05,350 271 00:15:05,350 --> 00:15:10,130 >> Eine weitere Möglichkeit, Funktionen aufrufen ist durch Sparfunktionen als Variablen. 272 00:15:10,130 --> 00:15:13,790 Wie ich schon sagte, eine Variable können jede Art. 273 00:15:13,790 --> 00:15:16,720 Einer der Typen ein variabler ist eine Funktion haben kann. 274 00:15:16,720 --> 00:15:19,800 Also, wenn Sie an Beispiel aussehen 4c, was ich geändert habe 275 00:15:19,800 --> 00:15:24,320 Hier ist var statt Funktion Add. 276 00:15:24,320 --> 00:15:26,807 Nun fügen entspricht einer Funktion. 277 00:15:26,807 --> 00:15:28,140 Diese Funktion hier anonym. 278 00:15:28,140 --> 00:15:33,346 Es hat keinen Namen, so ist es nur Funktion und dann die Klammern. 279 00:15:33,346 --> 00:15:35,220 Die Syntax nach, dass ändert sich nicht, aber Sie 280 00:15:35,220 --> 00:15:38,300 Sie müssen im Hinterkopf behalten, dass Sie eine Variable, die Sie haben, 281 00:15:38,300 --> 00:15:42,940 Speichern Sie die Funktion in Add, und eine Variable, die Sie in High Speicherung sind. 282 00:15:42,940 --> 00:15:47,620 >> Weil hinzufügen und Hoch sind jetzt Variablen und nicht die Funktionen, ändert etwas. 283 00:15:47,620 --> 00:15:50,190 Dies ist ein häufiger Fehler, den ich sehen in eine Menge von JavaScripts der Menschen, 284 00:15:50,190 --> 00:15:52,410 und etwas im Auge zu behalten. 285 00:15:52,410 --> 00:15:54,365 Wenn ich dies, mal sehen, was passiert. 286 00:15:54,365 --> 00:15:57,410 287 00:15:57,410 --> 00:15:58,230 Ich erhalte eine Fehlermeldung. 288 00:15:58,230 --> 00:16:01,000 Es ist zu sagen undefined an dieser Stelle. 289 00:16:01,000 --> 00:16:03,520 So sagt es weiß nicht, was hinzuzufügen ist. 290 00:16:03,520 --> 00:16:06,010 >> Denn jetzt hinzuzufügen ist kein Funktion hinzuzufügen, ist eine Variable. 291 00:16:06,010 --> 00:16:10,100 Und Sie nicht wirklich gegeben haben fügen Sie einen Wert noch, wenn man es verwendet. 292 00:16:10,100 --> 00:16:14,460 Das bringt uns zum Beispiel 4d, wo, wenn Sie Variablen als Funktionen verwenden möchten, 293 00:16:14,460 --> 00:16:17,210 Sie müssen nur sicherstellen, dass sie erhalten Sie den Wert, bevor sie verwendet werden. 294 00:16:17,210 --> 00:16:20,200 295 00:16:20,200 --> 00:16:23,420 >> Kommen wir nun zum Beispiel fünf dann. 296 00:16:23,420 --> 00:16:27,390 Hier reden wir über Strukturen in C. In C, Strukturen 297 00:16:27,390 --> 00:16:30,320 haben diese feste Struktur, um sie da muss man ihnen erklären, 298 00:16:30,320 --> 00:16:33,050 bevor Sie es verwenden, und Sie sagen, ich habe ein Student, 299 00:16:33,050 --> 00:16:36,645 und jeder Schüler genau ein Name, ein Jahr, ein Geschlecht. 300 00:16:36,645 --> 00:16:37,770 Es muss alle von ihnen haben. 301 00:16:37,770 --> 00:16:42,280 Es kann keine andere Werte, und sie müssen bestimmte Typen sein. 302 00:16:42,280 --> 00:16:47,540 >> Dann können wir die Initialisierung Struktur in diesem schönen Syntax 303 00:16:47,540 --> 00:16:49,470 weil sie weiß, die Reihenfolge. 304 00:16:49,470 --> 00:16:51,460 So weiß er, dass Roger ist ein Name. 305 00:16:51,460 --> 00:16:54,060 Sie weiß, dass 2016 ein Jahr und M ein Geschlecht 306 00:16:54,060 --> 00:16:58,200 weil wir gesagt, dass es diese Liste ist eine struct Student. 307 00:16:58,200 --> 00:17:01,607 Und dann können Sie drucken es, den Zugriff auf s.name. 308 00:17:01,607 --> 00:17:03,690 Mal sehen, wie wir würde konvertieren, dass JavaScript. 309 00:17:03,690 --> 00:17:06,400 310 00:17:06,400 --> 00:17:09,790 Beachten Sie, dass s ist nun ein variabel, und es gibt keinen Typ. 311 00:17:09,790 --> 00:17:10,920 Es ist nur eine var wieder. 312 00:17:10,920 --> 00:17:14,480 Da ist es egal, ob die Typ dieser Variablen ist ein Zeiger, 313 00:17:14,480 --> 00:17:17,440 es ist eine Struktur, oder irgendetwas anderes. 314 00:17:17,440 --> 00:17:19,650 Wir haben eine etwas andere Syntax. 315 00:17:19,650 --> 00:17:21,890 Diese Syntax ist das Objekt-Syntax. 316 00:17:21,890 --> 00:17:24,400 >> Man könnte es in JSON gesehen haben. 317 00:17:24,400 --> 00:17:27,780 JSON steht tatsächlich für die JavaScript Object Notation. 318 00:17:27,780 --> 00:17:31,240 Dies ist, wie Sie festlegen, Objekte in JavaScript. 319 00:17:31,240 --> 00:17:34,500 Wir haben einen Schlüssel, das ist, der Wert ist, wie der Name. 320 00:17:34,500 --> 00:17:37,680 Und wir geben ihm Werte auf die andere Seite des Dickdarms. 321 00:17:37,680 --> 00:17:41,850 Und eine Sache im Auge zu behalten ist, dass Sie brauchen nicht einen Namen und ein Jahr haben 322 00:17:41,850 --> 00:17:42,980 und eine geschlechts für ein Objekt. 323 00:17:42,980 --> 00:17:44,570 Ein Objekt kann keine Werte haben. 324 00:17:44,570 --> 00:17:46,920 Es kann so viele wie Sie möchten. 325 00:17:46,920 --> 00:17:50,375 >> Wir können diese Objekte nur die verwenden Ebenso würden wir eine Struktur zu verwenden, s.name. 326 00:17:50,375 --> 00:17:53,810 327 00:17:53,810 --> 00:17:57,080 Wir können es wirklich schnell laufen indem Sie Knoten B. 5.c. 328 00:17:57,080 --> 00:18:00,320 329 00:18:00,320 --> 00:18:02,520 Wir können nicht wirklich führen Sie eine C-Datei im Knoten. 330 00:18:02,520 --> 00:18:03,654 Er weiß nicht, was C. 331 00:18:03,654 --> 00:18:04,695 Es weiß nur JavaScript. 332 00:18:04,695 --> 00:18:09,865 Wenn wir laufen die ex5.js, erhalten wir der Wert, den wir erwarten. 333 00:18:09,865 --> 00:18:13,490 334 00:18:13,490 --> 00:18:15,980 >> Kommen wir nun zum Beispiel sechs. 335 00:18:15,980 --> 00:18:18,930 Hier möchte ich nur ein wenig sprechen etwas mehr über JavaScript-Arrays 336 00:18:18,930 --> 00:18:20,930 denn sie sind ein bisschen anders als das, was du bist 337 00:18:20,930 --> 00:18:26,940 in C Arrays werden notiert verwendet, nicht mit den Klammern, wie in C, 338 00:18:26,940 --> 00:18:28,640 mit den geschweiften Klammern, aber Klammern. 339 00:18:28,640 --> 00:18:32,150 Sie können ein leeres Array haben, wie arr entsprechend vier. 340 00:18:32,150 --> 00:18:34,680 Sie können Arrays mit mehreren Werten. 341 00:18:34,680 --> 00:18:39,790 Und Sie darauf zugreifen genau die gleiche Weise in C. 342 00:18:39,790 --> 00:18:42,990 >> Bis zu säumen sieben, alles, was scheint ziemlich einfach. 343 00:18:42,990 --> 00:18:45,390 Ein kleiner Unterschied besteht hier in Zeile 10. 344 00:18:45,390 --> 00:18:48,620 Die Art und Weise eine Länge von einem bekommen Array ist nur durch den Aufruf .length. 345 00:18:48,620 --> 00:18:50,620 Ein Array kann tatsächlich wie ein Objekt behandelt, 346 00:18:50,620 --> 00:18:54,960 und diese Aufgabe hat eine Länge Immobilien dass Sie anrufen, um die Länge zu bekommen. 347 00:18:54,960 --> 00:18:57,350 Beachten Sie, dass dies anders ist in C, da in C Sie 348 00:18:57,350 --> 00:19:01,600 haben, um die Länge wissen Ihr Objekt vor der Zeit. 349 00:19:01,600 --> 00:19:04,700 >> So eine andere nette Sache über Arrays ist, dass man verschiedene Typen haben. 350 00:19:04,700 --> 00:19:07,470 Wenn Sie ein Array in C haben, gibt sind Felder mit einem bestimmten Wert, 351 00:19:07,470 --> 00:19:11,900 entweder eine Struktur Zeiger oder schwimmt oder [unverständlich]. 352 00:19:11,900 --> 00:19:13,700 Hier können Sie verschiedene Werte haben. 353 00:19:13,700 --> 00:19:17,560 Ich hatte zuerst eine Fließkommazahl, dann ein Boolean, dann noch eine ganze Zahl. 354 00:19:17,560 --> 00:19:19,670 Und tatsächlich, sie Typen zu ändern. 355 00:19:19,670 --> 00:19:21,220 Schauen Sie in Zeile 16. 356 00:19:21,220 --> 00:19:26,760 Array zwei verändert sich davon entfernt, eine Zahl, eine ganze Zahl, eine Zeichenfolge. 357 00:19:26,760 --> 00:19:30,920 >> Eine andere nette Sache über Arrays finden Sie hier in Zeile 19, haben sie unendliche Größe. 358 00:19:30,920 --> 00:19:35,900 Sie können nur sagen, ich möchte den hundertsten Element, um die Zeichenfolge echt ist. 359 00:19:35,900 --> 00:19:38,510 Und das scheint nicht zu machen Sinn, da das Array nur 360 00:19:38,510 --> 00:19:41,080 hat Platz für drei Elemente, so das Ende sollte zwei sein. 361 00:19:41,080 --> 00:19:44,800 Aber wenn Sie das tun, lassen Sie uns sehen, welche Array drei wird. 362 00:19:44,800 --> 00:19:47,460 Wir würden dies schnell laufen mit Knoten Beispiel six.js. 363 00:19:47,460 --> 00:19:49,990 364 00:19:49,990 --> 00:19:52,180 Wir bekommen diese wirklich lange Array und was passiert, 365 00:19:52,180 --> 00:19:55,100 wird haben wir die ersten Elemente und dann eine Reihe von Rohlingen 366 00:19:55,100 --> 00:19:56,580 bis wir unsere String. 367 00:19:56,580 --> 00:19:58,580 JavaScript füllt die Array, wie es gebraucht wird. 368 00:19:58,580 --> 00:20:01,790 369 00:20:01,790 --> 00:20:05,420 >> Lassen Sie uns schließlich zu unserem letzten Beispiel zu gehen. 370 00:20:05,420 --> 00:20:08,180 Hier haben wir eine Liste von verschiedenen Studenten. 371 00:20:08,180 --> 00:20:11,350 Ich möchte ein wenig sprechen etwas über ein paar nette Aspekte 372 00:20:11,350 --> 00:20:14,240 von for-Schleifen in JavaScript. 373 00:20:14,240 --> 00:20:17,500 In C, zum Schleifen Art beschränkt. 374 00:20:17,500 --> 00:20:21,490 Sie haben eine feste Struktur, in der Sie eine variable, haben Sie eine Bedingung, 375 00:20:21,490 --> 00:20:23,850 und dann können Sie etwas tun am Ende der Schleife. 376 00:20:23,850 --> 00:20:27,560 Und natürlich funktioniert dies in JavaScript wie wir gesehen in den vorherigen Beispielen. 377 00:20:27,560 --> 00:20:31,030 Aber wir haben auch schönere Möglichkeiten dies zu tun, in JavaScript. 378 00:20:31,030 --> 00:20:33,870 Dies nennt man eine foreach-Schleife. 379 00:20:33,870 --> 00:20:36,580 >> Sorry, gehen wir zurück zum Beispiel sieben hier. 380 00:20:36,580 --> 00:20:39,320 Wir können auch sagen Abschnitt ist eine Liste. 381 00:20:39,320 --> 00:20:43,250 Also gib mir jedes i oder jeder Index in dieser Liste. 382 00:20:43,250 --> 00:20:46,255 Dann können wir die Schüler erhalten nur durch den Aufruf Abschnitt i. 383 00:20:46,255 --> 00:20:50,690 So den gesamten Code der Einstellung i gleich Null ist und sicherstellen, dass i 384 00:20:50,690 --> 00:20:54,420 ist kleiner als die Länge und Hinzufügen von ein bis ich jedes Mal, das ist 385 00:20:54,420 --> 00:21:00,220 kümmert sich um Sie nicht schön mit diesem foreach-Schleife. 386 00:21:00,220 --> 00:21:02,830 >> Nicht nur, dass foreach-Schleifen arbeiten in Listen oder Arrays, 387 00:21:02,830 --> 00:21:06,130 sie arbeiten auch in Objekten, das ist auch schön. 388 00:21:06,130 --> 00:21:10,240 Sie können den Namen bekommen jede Eigenschaft nur durch die Einnahme 389 00:21:10,240 --> 00:21:15,030 ein Wörterbuch oder ein Objekt, wie Studenten, und dann nur sagen, gib mir jede Taste. 390 00:21:15,030 --> 00:21:18,920 Ein Schlüssel würden diese sein Eigenschaften, Namen oder Haus. 391 00:21:18,920 --> 00:21:22,870 Also, was hier geschehen ist, dass wir zuerst den Namen und dann ausdrucken 392 00:21:22,870 --> 00:21:24,920 das Haus eines jeden Schülers. 393 00:21:24,920 --> 00:21:29,170 >> Ich kann dies in Knoten laufen sehr schnell, Ihnen zu zeigen. 394 00:21:29,170 --> 00:21:35,510 Wir bekommen zuerst die C-Stil für Schleife, wo wir jedes Objekt wird ausgedruckt. 395 00:21:35,510 --> 00:21:38,910 Und dann haben wir die JavaScript- Stil, wo man gerade 396 00:21:38,910 --> 00:21:41,510 Drucken Sie jede Taste und legen Wert auf individuell. 397 00:21:41,510 --> 00:21:45,560 398 00:21:45,560 --> 00:21:47,050 >> In Ordnung. 399 00:21:47,050 --> 00:21:52,850 Nun, da wir Node.js abgedeckt, ich glaube, wir sind bereit, mit Meteor loszulegen. 400 00:21:52,850 --> 00:21:56,070 Wie gesagt, ich habe einen tollen Job Meteor schreiben einige fertige Beispiele 401 00:21:56,070 --> 00:22:00,600 für Sie, dass Sie durch zu erkunden Dieses Tutorial oder im Seminarordner. 402 00:22:00,600 --> 00:22:03,750 Aber hier möchte ich Start mehr von Grund auf neu. 403 00:22:03,750 --> 00:22:06,810 >> Lassen Sie uns eine einfache Anwendung zu tun. 404 00:22:06,810 --> 00:22:14,140 Dies ist eine Art der Basis dessen, was die zu tun Anwendung ich Sie zeigte früher liegt. 405 00:22:14,140 --> 00:22:16,990 In diesem Lernprogramm werden sehen, dass es 406 00:22:16,990 --> 00:22:20,180 ein Befehl Meteor zu erstellen erstellen Sie ein neues Projekt Meteor. 407 00:22:20,180 --> 00:22:24,510 Sie müssen dies in Ordnung zu rufen Meteor Projekte, weil sie laufen 408 00:22:24,510 --> 00:22:27,470 werden die Befehle ausführen um den Meteor zu erstellen 409 00:22:27,470 --> 00:22:31,100 Dateien, die für Ihr Projekt. 410 00:22:31,100 --> 00:22:35,920 >> Wenn Sie in das Terminal zu gehen, können wir gehen Sie in das Verzeichnis mit dem Namen der erste Schritt. 411 00:22:35,920 --> 00:22:41,240 Und Schritt wird man mit entsprechen der erste Schritt im Tutorial. 412 00:22:41,240 --> 00:22:44,020 Unsere Ordner vorhanden sind, Schritt einem im zweiten Schritt, den ganzen Weg bis fünf. 413 00:22:44,020 --> 00:22:47,835 Und jeder wird entsprechend zu einem Schritt in diesem Tutorial. 414 00:22:47,835 --> 00:22:50,960 415 00:22:50,960 --> 00:22:52,780 Ich werde sie zu öffnen hier meine Texteditor 416 00:22:52,780 --> 00:22:56,280 so dass wir ein wenig von dem, was geschaffen wurde angezeigt. 417 00:22:56,280 --> 00:22:58,530 Wir stellen fest, dass es sind vier Hauptteile. 418 00:22:58,530 --> 00:23:01,170 Es gibt einen Meteor Verzeichnis .meteor. 419 00:23:01,170 --> 00:23:03,180 Und dass Sie in der Regel Sie brauchen nicht zu berühren. 420 00:23:03,180 --> 00:23:05,070 Meteor kümmert dass Ordner, und es ist nur 421 00:23:05,070 --> 00:23:08,640 sorgt dafür, dass Ihre Projekt wird korrekt funktionieren. 422 00:23:08,640 --> 00:23:14,580 >> Wir haben auch drei Dateien, eine HTML-Datei, eine JavaScript-Datei und eine CSS-Datei. 423 00:23:14,580 --> 00:23:18,670 Lassen Sie uns zunächst mit der HTML-Datei starten. 424 00:23:18,670 --> 00:23:21,310 Auf den ersten Blick sieht das wie ein normales HTML-Dokument. 425 00:23:21,310 --> 00:23:23,490 Beachten Sie aber, dass es gibt ein paar Unterschiede. 426 00:23:23,490 --> 00:23:26,520 Einen ist dies nicht tatsächlich eine komplette HTML-Dokument. 427 00:23:26,520 --> 00:23:28,640 Wir verpassen die HTML-Tags. 428 00:23:28,640 --> 00:23:29,700 Das ist normal. 429 00:23:29,700 --> 00:23:33,560 In Meteor, du bist nicht zu erwarten auf diese HTML-Tags erstellen. 430 00:23:33,560 --> 00:23:35,260 Das ist für Sie erledigt. 431 00:23:35,260 --> 00:23:38,380 Sie wollen, wenn Sie begin-- wollen, um eine Website zu erstellen, 432 00:23:38,380 --> 00:23:40,430 Sie brauchen nur zu starten mit dem Head-Tag, 433 00:23:40,430 --> 00:23:43,510 festlegen, dass, und dann definieren den Body-Tag. 434 00:23:43,510 --> 00:23:48,940 >> Aber wenn du in dieser Mitteilung HTML-Datei, haben wir einen neuen Tag. 435 00:23:48,940 --> 00:23:50,350 Wir haben die Template-Tag. 436 00:23:50,350 --> 00:23:52,050 Das ist nicht normal HTML. 437 00:23:52,050 --> 00:23:55,300 Dies ist eine spezielle Version von HTML dass Meteor stellt Ihnen. 438 00:23:55,300 --> 00:23:57,660 Es heißt Platz Bars. 439 00:23:57,660 --> 00:24:00,980 Sie können Vorlagen so wenig zu definieren Module, ein bisschen wie Hilfsfunktionen, 440 00:24:00,980 --> 00:24:03,660 in Ihrem C oder JavaScript-Code. 441 00:24:03,660 --> 00:24:06,020 Diese Vorlage würde einen Namen genannt Aufgabe. 442 00:24:06,020 --> 00:24:10,520 Und Sie gleich hier online sehen 13, die Sie können diese Vorlagen rufen. 443 00:24:10,520 --> 00:24:14,380 Und was Meteor machen wird, ist nur füllen Sie diese Aufgaben für Sie. 444 00:24:14,380 --> 00:24:17,540 445 00:24:17,540 --> 00:24:22,580 >> Eine andere Sache, die Sie bemerken ein etwas anders ist dies jede Funktion. 446 00:24:22,580 --> 00:24:26,130 Jeder wird die Variable nehmen Aufgaben und Art der durch sie gehen 447 00:24:26,130 --> 00:24:28,810 in diesem foreach-Schleife wir sah in Beispiel sieben. 448 00:24:28,810 --> 00:24:34,200 Diese können jeweils ein Wörterbuch nehmen oder eine Liste, ein Objekt oder eine Liste, 449 00:24:34,200 --> 00:24:38,820 und es wird nur durch all das gehen Werte wie einer foreach-Schleife würde. 450 00:24:38,820 --> 00:24:44,110 Wenn wir also eine Reihe von Aufgaben, diese wird die Schablone auf jede Aufgabe nennen. 451 00:24:44,110 --> 00:24:49,590 >> Lassen Sie uns laufen die Meteor-Projekt nur um zu sehen, dass dies geschieht. 452 00:24:49,590 --> 00:24:53,260 Ich das Meteor-Projekt mit nur Meteor Meteor oder ausführen. 453 00:24:53,260 --> 00:24:56,690 Und jetzt Meteor müssen nur schnell bereiten das Projekt, 454 00:24:56,690 --> 00:25:03,320 starten Sie die Datenbank bei Bedarf, und dann lokal veröffentlichen die App. 455 00:25:03,320 --> 00:25:07,200 Jetzt können wir unsere Web-Browser zu gehen. 456 00:25:07,200 --> 00:25:10,215 Und wir, die wir sehen, haben eine sehr einfache Anwendung. 457 00:25:10,215 --> 00:25:22,190 458 00:25:22,190 --> 00:25:29,130 So war das, was wir sahen, zeigten sich tatsächlich der Schritt ein, den Schritt einer Datei. 459 00:25:29,130 --> 00:25:33,260 >> Kommen wir nun zu Schritt zwei, nur weil Ich denke es wird den gleichen Zweck erfüllen. 460 00:25:33,260 --> 00:25:36,500 Ich werde einfach zu ändern dem Schritt zwei Verzeichnis 461 00:25:36,500 --> 00:25:39,550 und erneut ausführen Meteor so können wir sehen, die Vorlage wir gerade arbeiteten mit. 462 00:25:39,550 --> 00:25:43,560 463 00:25:43,560 --> 00:25:45,730 Ja, eine Frage? 464 00:25:45,730 --> 00:25:49,724 >> ZIELGRUPPE: Wenn wir die Erlaubnis verweigert, ist dass--, was es ist 465 00:25:49,724 --> 00:25:50,390 für so? 466 00:25:50,390 --> 00:25:52,154 467 00:25:52,154 --> 00:25:54,070 ROGER ZURAWICKI: Wenn Sie läuft Meteor Lauf sind, 468 00:25:54,070 --> 00:25:57,280 und Sie die Erlaubnis haben, verweigert, einige Ihrer Dateien 469 00:25:57,280 --> 00:25:59,070 vielleicht nicht die richtige Berechtigungssatz. 470 00:25:59,070 --> 00:26:03,970 So haben Sie, um zu überprüfen, wo Die Berechtigungen sind aus. 471 00:26:03,970 --> 00:26:06,030 Sie konnten aus sein in Ihr Projekt Meteor, 472 00:26:06,030 --> 00:26:08,550 oder sie weg in das sein könnte Meteor-Dateien selbst. 473 00:26:08,550 --> 00:26:13,742 >> ZIELGRUPPE: Wenn ich heruntergeladen es gerade jetzt von Ihrem GitHub, dann was soll ich tun 474 00:26:13,742 --> 00:26:16,110 [Unverständlich]? 475 00:26:16,110 --> 00:26:20,110 >> ROGER ZURAWICKI: Wenn Sie möchten um sicherzustellen, dass Sie darauf zugreifen können, 476 00:26:20,110 --> 00:26:21,450 es gibt einen Befehl Sie ausführen können. 477 00:26:21,450 --> 00:26:26,590 Lassen Sie mich schnell schreibe es so dass andere Leute es sehen können. 478 00:26:26,590 --> 00:26:30,670 Ich werde eine neue Registerkarte öffnen hier und gehen in meinem Seminar Ordner. 479 00:26:30,670 --> 00:26:33,500 480 00:26:33,500 --> 00:26:36,490 Chmod ist der Befehl um Berechtigungen zu ändern, 481 00:26:36,490 --> 00:26:40,060 und man kann sagen, dass r für es zu tun rekursiv für jede Datei. 482 00:26:40,060 --> 00:26:46,040 Und Berechtigungen können Sie versuchen, 0755 um sicherzustellen, dass Sie vollen Zugriff haben, 483 00:26:46,040 --> 00:26:47,820 und alle anderen lesen können. 484 00:26:47,820 --> 00:26:50,100 Und wenn Sie führen Sie einfach dieser Befehl, wird es machen 485 00:26:50,100 --> 00:26:55,800 sicher, dass die Berechtigungen sind in überprüfen Sie das gesamte Verzeichnis. 486 00:26:55,800 --> 00:26:59,160 Laufende ls -l kann Ihnen zeigen, die Berechtigungen im Detail. 487 00:26:59,160 --> 00:27:01,290 Das sieht nicht gut aus. 488 00:27:01,290 --> 00:27:03,900 >> Was am wichtigsten ist dass Sie alle drei haben 489 00:27:03,900 --> 00:27:06,610 Rwx für alle Dateien in das Seminar Verzeichnis. 490 00:27:06,610 --> 00:27:09,415 491 00:27:09,415 --> 00:27:11,330 Hieß das, das Problem zu lösen? 492 00:27:11,330 --> 00:27:13,735 >> ZIELGRUPPE: Es sagt fehlt operante [unverständlich]. 493 00:27:13,735 --> 00:27:17,980 494 00:27:17,980 --> 00:27:18,740 [Unverständlich] 495 00:27:18,740 --> 00:27:20,490 ROGER ZURAWICKI: Sie müssen sicherstellen, dass Sie 496 00:27:20,490 --> 00:27:23,022 einen Punkt am Ende des Befehls. 497 00:27:23,022 --> 00:27:23,938 ZIELGRUPPE: [unverständlich]. 498 00:27:23,938 --> 00:27:36,395 499 00:27:36,395 --> 00:27:37,520 ROGER ZURAWICKI: In Ordnung. 500 00:27:37,520 --> 00:27:42,220 Lassen Sie uns schnell zurück zu gehen, um die lokalen Host, die App die wir haben. 501 00:27:42,220 --> 00:27:46,640 Und Sie werden sehen, dass wir eine einige Aufgaben hier, wie erwartet. 502 00:27:46,640 --> 00:27:49,330 503 00:27:49,330 --> 00:27:51,990 Wir haben eine Reihe von CSS, die Sie brauchen nicht zu befürchten. 504 00:27:51,990 --> 00:27:53,740 Der Meteor-Tutorial nur gibt Ihnen dies 505 00:27:53,740 --> 00:27:58,010 um Ihren Blick auf die Liste ein zu tun etwas schöner ist als die einfache HTML. 506 00:27:58,010 --> 00:28:02,290 Und wir die JavaScript-Datei, müssen die Ich werde etwas später mehr ins Detail gehen, 507 00:28:02,290 --> 00:28:04,272 aber es bietet diese Aufgaben. 508 00:28:04,272 --> 00:28:04,980 Dies ist Aufgabe eines. 509 00:28:04,980 --> 00:28:05,740 Dies ist Aufgabe zwei. 510 00:28:05,740 --> 00:28:06,590 Dies ist Aufgabe drei. 511 00:28:06,590 --> 00:28:09,720 Das ist also der Daten Meteor bekommen. 512 00:28:09,720 --> 00:28:15,590 >> Eine der coolen Dinge über Meteor ist dass Änderungen automatisch. 513 00:28:15,590 --> 00:28:18,990 Wenn ich wollte das ändern Name der ersten Aufgabe 514 00:28:18,990 --> 00:28:22,490 also würde sagen, das ist nicht Aufgabe, und ich speichern, 515 00:28:22,490 --> 00:28:26,370 wenn ich dann gehen Sie zur Web- Browser, können Sie es zu aktualisieren, 516 00:28:26,370 --> 00:28:30,861 und es wird automatisch sagt dies ist nicht eine Rede. 517 00:28:30,861 --> 00:28:32,860 Sie können das gleiche tun in jeder dieser Dateien. 518 00:28:32,860 --> 00:28:37,940 Nehmen Sie eine Änderung, statt zu tun, Liste, werde ich es meine Liste zu tun. 519 00:28:37,940 --> 00:28:40,980 >> Und eine Sache, die Sie gerade festgestellt, dass ich nicht einmal zu aktualisieren. 520 00:28:40,980 --> 00:28:43,960 Die Idee, erfrischende Art ist der für Sie gelöst mit Meteor. 521 00:28:43,960 --> 00:28:48,970 Jedes Mal, wenn sie die Dateiänderungen erkennt, es wird die Änderungen für Sie zu laden. 522 00:28:48,970 --> 00:28:53,110 Dies funktioniert für alle Dateien, ob es ist HTML, CSS oder JavaScript. 523 00:28:53,110 --> 00:28:57,990 Um Ihnen zu zeigen, was diese App aussehen würde, wie ohne CSS, kann ich sie alle zu entfernen. 524 00:28:57,990 --> 00:29:04,720 Und wenn es wieder geladen, haben Sie jetzt ein nicht so gut aussehende Liste zu tun. 525 00:29:04,720 --> 00:29:06,370 Sagen wir mal, dass der Inhalt zurück. 526 00:29:06,370 --> 00:29:11,343 Und sicher genug: er erfrischt und CSS ist wieder da. 527 00:29:11,343 --> 00:29:11,843 Großartig. 528 00:29:11,843 --> 00:29:15,700 529 00:29:15,700 --> 00:29:20,010 >> Wir können jetzt gehen Sie mit dem Tutorial. 530 00:29:20,010 --> 00:29:23,360 Lassen Sie uns über Schritt zwei, Vorlagen zu sprechen. 531 00:29:23,360 --> 00:29:27,140 Das ist das, was wir gerade gesehen haben mit den verschiedenen Aufgaben. 532 00:29:27,140 --> 00:29:31,550 Meteor wird Ihnen erklären, was Vorlagen und wie diese Logik funktioniert. 533 00:29:31,550 --> 00:29:34,760 Aber lassen Sie uns einfach auf den Code zu sehen sehen, ob wir Sinn daraus zu machen. 534 00:29:34,760 --> 00:29:38,030 535 00:29:38,030 --> 00:29:41,460 >> In sehr einfachen Anwendungen, wie das, was wir in der einfachen haben 536 00:29:41,460 --> 00:29:44,550 zu tun, Schritt eins, zwei Schritt, Schritt drei, vier Schritt, Stufe fünf, 537 00:29:44,550 --> 00:29:45,700 wir haben keine Ordner. 538 00:29:45,700 --> 00:29:47,533 Wir haben nicht den Server haben Ordner bereits erwähnt. 539 00:29:47,533 --> 00:29:50,510 Wir haben nicht die Clients haben Ordner, der erwähnt wurde. 540 00:29:50,510 --> 00:29:52,290 So Meteor werden alle Dateien ausgeführt werden. 541 00:29:52,290 --> 00:29:55,210 Es wird es sowohl auf der Flucht Client, sowohl auf dem Server. 542 00:29:55,210 --> 00:29:58,840 >> Und wenn Sie Teile Ihres JavaScript wollen Code, um nur auf dem Client ausgeführt, 543 00:29:58,840 --> 00:30:02,350 die sie benötigen, um sicherzustellen, dass Sie eine if-Anweisung, ein bisschen wie das, was 544 00:30:02,350 --> 00:30:04,890 wir in unserer JavaScript-Datei hier habe. 545 00:30:04,890 --> 00:30:08,010 So Meteor, nur dann, wenn es ist der Kunde, dann habe ich 546 00:30:08,010 --> 00:30:12,355 wollen eine Vorlage definieren Helfer namens Aufgaben. 547 00:30:12,355 --> 00:30:15,050 548 00:30:15,050 --> 00:30:19,260 Was dieser Code wirklich tut, ist es sagt, dass es 549 00:30:19,260 --> 00:30:21,800 ein Objekt namens template dass Meteor bietet. 550 00:30:21,800 --> 00:30:23,270 Und wir werden einen Helfer hinzuzufügen. 551 00:30:23,270 --> 00:30:27,680 Helfer sind diese Aufgaben, diese Dinge, wie die Aufgaben. 552 00:30:27,680 --> 00:30:33,890 >> Du wirst sehen, dass, wenn wir wieder in die HTML-Datei mit dem Namen jeder von uns auf Aufgaben. 553 00:30:33,890 --> 00:30:35,750 Aufgaben nicht in der HTML definiert. 554 00:30:35,750 --> 00:30:37,770 Es ist in der JavaScript definiert. 555 00:30:37,770 --> 00:30:42,610 Und Meteor muss wissen, welche Aufgaben wenn wir in die JavaScript finden Sie hier. 556 00:30:42,610 --> 00:30:45,550 Aufgaben ist diese Helfer. 557 00:30:45,550 --> 00:30:49,830 Helfer, die Sie sich vorstellen können es als Vorlage variabel. 558 00:30:49,830 --> 00:30:51,000 Und was bedeutet Aufgaben machen? 559 00:30:51,000 --> 00:30:53,580 Nun, gibt es die Liste der Werte. 560 00:30:53,580 --> 00:30:56,750 Da es sich um eine Liste, wir können jedes in es nennen. 561 00:30:56,750 --> 00:30:58,590 Also deshalb nennen wir jeweils auf Aufgaben. 562 00:30:58,590 --> 00:30:59,730 Und jetzt haben wir Aufgabe. 563 00:30:59,730 --> 00:31:02,850 564 00:31:02,850 --> 00:31:03,990 >> Was bedeutet Aufgabe zu tun? 565 00:31:03,990 --> 00:31:07,740 Nun, diesen Pfeil hat hier nach den geschweiften Klammern. 566 00:31:07,740 --> 00:31:09,130 Das heißt, Aufgabe ist eine Schablone. 567 00:31:09,130 --> 00:31:11,100 Es ist kein Helfer, wie das, was wir gerade gesehen haben. 568 00:31:11,100 --> 00:31:12,872 Es ist eine Schablone wir definiert haben. 569 00:31:12,872 --> 00:31:14,080 Und wo haben wir definiert es? 570 00:31:14,080 --> 00:31:16,950 Wir haben es hier unten definiert. 571 00:31:16,950 --> 00:31:21,160 >> All diese Vorlage hat ist machen ein Listenelement, und es Text nennt. 572 00:31:21,160 --> 00:31:24,160 Nun scheint Text a sein Helfer, aber ich werde Ihnen zeigen, 573 00:31:24,160 --> 00:31:26,610 dass dies tatsächlich noch ein Datenelement von Aufgaben. 574 00:31:26,610 --> 00:31:29,230 575 00:31:29,230 --> 00:31:33,670 Wenn Sie jeden Anruf, in es geht die Datenstruktur ein wenig. 576 00:31:33,670 --> 00:31:39,130 Wie die foreach-Schleife, nun sieht einfach an dem ersten Element im Objekt. 577 00:31:39,130 --> 00:31:41,850 Wir sehen, dass Text ist hier in unserem Objekt definiert. 578 00:31:41,850 --> 00:31:45,350 So Meteor ist klug zu wissen, dass wir über dieses Textes sprechen, 579 00:31:45,350 --> 00:31:47,630 nicht der Helfer namens Text. 580 00:31:47,630 --> 00:31:52,120 Es wird nur der Wert dieser Text hier und zeigt sie als HTML, 581 00:31:52,120 --> 00:31:55,475 und das ist, wie die Daten geht vom JavaScript mit dem HTML. 582 00:31:55,475 --> 00:32:03,320 583 00:32:03,320 --> 00:32:07,030 >> Bewegen Sie sich auf, obwohl in diesem Beispiel wir hart codiert diese Werte. 584 00:32:07,030 --> 00:32:10,440 Meteor hat zwei wirklich schöne Dinge für uns. 585 00:32:10,440 --> 00:32:15,050 Neben der Live-Aktualisierung, die wir zeigte, es verwaltet auch unserer Datenbank. 586 00:32:15,050 --> 00:32:18,750 Wenn Sie mit PHP arbeiten musste, Sie musste konfigurieren phpMyAdmin. 587 00:32:18,750 --> 00:32:21,320 Sie haben, um sicherzustellen, Ihre Tische waren alle in Schach. 588 00:32:21,320 --> 00:32:24,760 Sie, eine Menge Arbeit zu tun, damit hatte dass Ihre Daten korrekt formatiert wurde, 589 00:32:24,760 --> 00:32:27,880 und PHP kann mit diesem kommunizieren. 590 00:32:27,880 --> 00:32:30,170 >> Nun nutzt Meteor ein neues Paradigma. 591 00:32:30,170 --> 00:32:32,310 Dies ist eine moderne Art und Weise der Umgang mit einer Datenbank. 592 00:32:32,310 --> 00:32:34,580 Es ist eine Technologie namens MongoDB. 593 00:32:34,580 --> 00:32:38,740 Genau wie in JavaScript, sahen wir, dass es spielte keine Rolle, welche Arten die Daten hatten. 594 00:32:38,740 --> 00:32:39,640 Alles war ein var. 595 00:32:39,640 --> 00:32:40,570 Es war kein charstar. 596 00:32:40,570 --> 00:32:40,930 Es war kein int. 597 00:32:40,930 --> 00:32:41,970 Es war nicht eine Struktur. 598 00:32:41,970 --> 00:32:44,210 Es war einfach var dies, dass var. 599 00:32:44,210 --> 00:32:46,320 >> MongoDB arbeitet Art der gleichen Weise. 600 00:32:46,320 --> 00:32:48,160 Sie müssen nicht um Ihre Tabellen zu definieren. 601 00:32:48,160 --> 00:32:50,860 Sie müssen nicht, um eine Tabelle zu sagen hat einen Namen, der einen int hat. 602 00:32:50,860 --> 00:32:54,710 Es hat, weiß ich nicht, ein Dollar, der eine Dezimalzahl ist. 603 00:32:54,710 --> 00:32:58,360 Es ist gerade diese JavaScript-Objekte, alle diese Vars, im Wesentlichen. 604 00:32:58,360 --> 00:33:02,780 Und das ist ein wirklich mächtiger Weg, um Ihre App Prototypen. 605 00:33:02,780 --> 00:33:06,190 Und deshalb Meteor nutzt dies aus. 606 00:33:06,190 --> 00:33:11,080 >> Wenn wir Sie mit Schritt drei, mal sehen, was sich geändert hat. 607 00:33:11,080 --> 00:33:15,480 Wenn wir uns die todos HTML, nicht viel. 608 00:33:15,480 --> 00:33:17,170 CSS hat sich überhaupt nicht verändert. 609 00:33:17,170 --> 00:33:22,420 Aber die kleine Änderung in HTML sehen wir ist haben wir geändert, wie Aufgaben definiert. 610 00:33:22,420 --> 00:33:23,800 Aufgaben ist jetzt eine Funktion. 611 00:33:23,800 --> 00:33:25,800 Das bedeutet, dass jedes Zeit, die wir wollen, um Aufgaben zu bekommen, 612 00:33:25,800 --> 00:33:27,480 wir gehen, um diese Funktion auszuführen. 613 00:33:27,480 --> 00:33:29,230 Dabei spielt es keine Rückkehr der Funktion als Wert. 614 00:33:29,230 --> 00:33:33,710 >> Meteor ist schlau, um tatsächlich laufen die Funktion, um zu sehen, was wir bekommen. 615 00:33:33,710 --> 00:33:36,650 Und es gibt diese Sache namens Aufgaben. 616 00:33:36,650 --> 00:33:40,650 Wir haben Aufgaben auf Leitung eins definiert, und es ist ein Mongo Sammlung. 617 00:33:40,650 --> 00:33:43,170 Mongo sich bezieht die Datenbank Meteor verwendet, 618 00:33:43,170 --> 00:33:48,420 und diese neue bedeutet nur, wir machen eine neue Kollektion, nennen es Aufgaben. 619 00:33:48,420 --> 00:33:53,540 In MySQL, wäre dies gleichbedeutend mit auf der Suche nach der Tabelle namens Aufgaben. 620 00:33:53,540 --> 00:33:56,350 Mongo hat Sammlungen, keine Tabellen. 621 00:33:56,350 --> 00:34:00,100 Also das sieht einfach für Aufgaben. 622 00:34:00,100 --> 00:34:04,820 >> Nun Vorlage in unserem Helfer in der Vorlage, die alle 623 00:34:04,820 --> 00:34:08,380 wir tun müssen, um alle zu bekommen Aufgaben wird diese Funktion finden 624 00:34:08,380 --> 00:34:11,710 und dieser leere Klammer. 625 00:34:11,710 --> 00:34:14,150 Dies ist insbesondere für Mongo Syntax. 626 00:34:14,150 --> 00:34:16,159 Es gibt jede Menge Online-Dokumentation, wie 627 00:34:16,159 --> 00:34:19,360 Sie effizienter machen kann und wirklich nützlich Mongo fragt. 628 00:34:19,360 --> 00:34:25,560 Aber so etwas ist gut genug für das Finden aller Daten. 629 00:34:25,560 --> 00:34:30,100 >> Nun, eine der Fragen, die Sie vielleicht sehen ist, dass wir nie wirklich Daten hinzuzufügen. 630 00:34:30,100 --> 00:34:35,020 Also, was passiert, wenn wir tatsächlich ausgeführt Schritt drei? 631 00:34:35,020 --> 00:34:37,550 Lassen Sie uns schnell in zu gehen Schritt drei und führen Meteor. 632 00:34:37,550 --> 00:34:42,870 633 00:34:42,870 --> 00:34:45,650 Beachten Sie, dass ich einen anderen Meteor Projekt läuft irgendwo anders, 634 00:34:45,650 --> 00:34:49,110 so Meteor mag das nicht. 635 00:34:49,110 --> 00:34:52,810 Ich werde einfach, schnell in der Nähe der andere mit Meteor-Steuerung C, 636 00:34:52,810 --> 00:34:55,780 gehen Sie in Schritt drei, und erneut ausführen Meteor. 637 00:34:55,780 --> 00:35:01,070 638 00:35:01,070 --> 00:35:03,180 Beachten Sie, es beginnt MongoDB weil MongoDB 639 00:35:03,180 --> 00:35:06,370 ist ein Teil jedes Meteor Projekt. 640 00:35:06,370 --> 00:35:09,190 >> So ist es, so meine Anwendung ist fehlerhaft. 641 00:35:09,190 --> 00:35:10,590 Das ist ein nettes Feature Meteor hat. 642 00:35:10,590 --> 00:35:13,700 Es stellt sicher, Ihre HTML ist gut validiert. 643 00:35:13,700 --> 00:35:17,710 Lassen Sie uns schnell an woran das liegen könnte suchen. 644 00:35:17,710 --> 00:35:26,110 Es scheint, ich habe versehentlich kopiert die falsche HTML-Code. 645 00:35:26,110 --> 00:35:30,610 Wenn ich ihn jetzt noch retten, Meteor automatisch den Server neu gestartet, 646 00:35:30,610 --> 00:35:34,650 und jetzt ist die App läuft, wie erwartet. 647 00:35:34,650 --> 00:35:39,220 Beachten Sie, um dies zu beheben, müssen Sie nur ausführen der gleiche HTML-Datei aus Schritt zwei, 648 00:35:39,220 --> 00:35:40,380 kopieren Sie sie in Schritt drei. 649 00:35:40,380 --> 00:35:43,290 650 00:35:43,290 --> 00:35:45,917 >> Wir können unseren lokalen Host zurück. 651 00:35:45,917 --> 00:35:47,500 Und nun sehen wir wir unsere Liste zu tun. 652 00:35:47,500 --> 00:35:50,070 Große, aber es ist leer. 653 00:35:50,070 --> 00:35:54,210 Wir haben nicht wirklich irgendwelche Aufgaben in unserem Mongo Datenbank. 654 00:35:54,210 --> 00:35:57,930 Also lassen Sie uns über ein Gespräch paar Möglichkeiten, können wir das tun. 655 00:35:57,930 --> 00:36:03,240 Wenn wir zurück zum Terminal, wir kann es zu schließen, und führen Meteor Mongo. 656 00:36:03,240 --> 00:36:05,320 >> Wenn Sie nicht vertraut sind mit, wie Meteor arbeitet, 657 00:36:05,320 --> 00:36:14,100 diese tatsächlich gibt Ihnen Zugang auf die volle MongoDB für Meteor. 658 00:36:14,100 --> 00:36:17,570 Beachten Sie, dass Sie zu laufen Erste Meteor für diese zu arbeiten. 659 00:36:17,570 --> 00:36:23,840 Also, wenn ich dies in einem neuen Tab, I können in das gleiche Verzeichnis zurück. 660 00:36:23,840 --> 00:36:29,040 661 00:36:29,040 --> 00:36:32,570 Und jetzt Meteor funktioniert prima. 662 00:36:32,570 --> 00:36:33,600 Dies ist eine Eingabeaufforderung. 663 00:36:33,600 --> 00:36:36,350 664 00:36:36,350 --> 00:36:38,790 Lassen Sie mich ein wenig größer, so dass wir sehen können. 665 00:36:38,790 --> 00:36:41,550 Das sieht ein bisschen anders als was Sie vielleicht, Sie verwendet werden 666 00:36:41,550 --> 00:36:42,869 nicht wirklich brauchen, um Mongo verwenden. 667 00:36:42,869 --> 00:36:45,410 Der ganze Sinn der mich hier so dass Sie JavaScript verwenden können. 668 00:36:45,410 --> 00:36:48,250 Aber wenn Sie neugierig sind, die Mongo API nicht 669 00:36:48,250 --> 00:36:50,730 SQL, die Structured Query Language. 670 00:36:50,730 --> 00:36:55,570 Es verwendet eine eigene Sprache, sieht viel wie JavaScript. 671 00:36:55,570 --> 00:37:00,520 Sehr schnell, die wir finden können der Tisch über db.tasks. 672 00:37:00,520 --> 00:37:08,940 Und es ist mir erzählen stellt sich heraus, wenn wir laufen zu finden, 673 00:37:08,940 --> 00:37:13,450 Art ähnlich dem, was wir mit hatten Meteor, können wir alle Elemente zu laden. 674 00:37:13,450 --> 00:37:17,330 Das Problem ist, wissen wir nicht tatsächlich alle Aufgaben definiert. 675 00:37:17,330 --> 00:37:20,600 So kann es nicht bekommen. 676 00:37:20,600 --> 00:37:22,130 >> Wir können einfügen, though. 677 00:37:22,130 --> 00:37:25,170 So können wir Einsatz laufen mit Kommandoeinsatz. 678 00:37:25,170 --> 00:37:29,140 Und wir geben ihm gerade ein Objekt, und wir haben gerade 679 00:37:29,140 --> 00:37:31,840 stellen Sie sicher, das Format ist, was wir erwarten. 680 00:37:31,840 --> 00:37:35,030 Wenn wir sah Schritt zwei, wir sahen, dass jede Aufgabe 681 00:37:35,030 --> 00:37:39,590 lag die Aufgabe mit einem Text als Schlüssel und was 682 00:37:39,590 --> 00:37:41,640 Ihr zu tun Artikel war als Variable. 683 00:37:41,640 --> 00:37:44,680 So können wir hier etwas zu tun. 684 00:37:44,680 --> 00:37:50,160 >> Wir können es eine Aufgabe einfügen rief ich aus Mongo. 685 00:37:50,160 --> 00:37:52,570 Und wir drücken Sie die Eingabetaste, und es läuft. 686 00:37:52,570 --> 00:37:56,900 Wir können laufen wieder finden, und wir sehen, dass es ein Objekt hier. 687 00:37:56,900 --> 00:38:01,810 Mongo weist sie eine ID, die Sie nicht wirklich brauchen, sich Sorgen zu machen. 688 00:38:01,810 --> 00:38:06,690 Was ist für Sie wichtig ist die Daten Sie setzen in, ist die Daten, die Sie raus. 689 00:38:06,690 --> 00:38:10,500 >> Gehen wir zurück zu unserer Web site, und hey, unsere Aufgabe geladen. 690 00:38:10,500 --> 00:38:13,987 Und Sie können sehen, dass denn Meteor ist sehr intelligent 691 00:38:13,987 --> 00:38:16,570 und immer aktualisiert, für euch, ich nicht haben, um die Seite zu berühren. 692 00:38:16,570 --> 00:38:19,160 Es automatisch geladen. 693 00:38:19,160 --> 00:38:23,520 >> Lassen Sie uns einige Code ausführen in JavaScript obwohl, dies zu tun. 694 00:38:23,520 --> 00:38:26,120 Wie wir Knoten in den Rücken Ende ausführen aus JavaScript 695 00:38:26,120 --> 00:38:29,280 wir können auch laufen JavaScript direkt in unserem Browser. 696 00:38:29,280 --> 00:38:31,970 Sie können dies durch eine Funktion zu tun genannt Inspect Element. 697 00:38:31,970 --> 00:38:34,210 Wenn ich einen Rechtsklick auf ein Abschnitt der Seite, 698 00:38:34,210 --> 00:38:36,730 gibt es eine Option genannt Inspect Element. 699 00:38:36,730 --> 00:38:38,840 Wenn Sie laufen ein Browser wie Safari, die Sie 700 00:38:38,840 --> 00:38:45,430 Möglicherweise müssen Sie den Entwickler aktivieren Tools, bevor Sie diese Funktion. 701 00:38:45,430 --> 00:38:46,930 >> Was uns interessiert, ist die Konsole. 702 00:38:46,930 --> 00:38:48,930 Also werden wir einfach nur unterwegs Konsole an der Unterseite. 703 00:38:48,930 --> 00:38:52,110 704 00:38:52,110 --> 00:38:55,970 Jetzt können wir jede Ausführung von JavaScript hier, wie die JavaScript 705 00:38:55,970 --> 00:38:58,860 Dateien, die ich zeigte in der js Beispiel. 706 00:38:58,860 --> 00:39:02,040 Aber jetzt schauen wir uns an Aufgaben. 707 00:39:02,040 --> 00:39:04,955 Wir können unser Befehl auszuführen. 708 00:39:04,955 --> 00:39:07,830 Und hoffentlich werde ich in der Lage zu machen es ein bisschen größer, so können wir alle sehen. 709 00:39:07,830 --> 00:39:14,390 710 00:39:14,390 --> 00:39:18,450 >> Wenn wir laufen tasks.find, und Sie werden sehen, dass dies genau die gleiche Code 711 00:39:18,450 --> 00:39:24,840 , dass die JavaScript-Datei verwendet Im dritten Schritt werden diese task.find. 712 00:39:24,840 --> 00:39:29,100 Wir können die gleiche Sache laufen, und Jetzt bekommen wir einige seltsame Dinge. 713 00:39:29,100 --> 00:39:31,050 Wie können wir tatsächlich die Daten zu erhalten? 714 00:39:31,050 --> 00:39:34,860 Nun, wir haben zu diesem Lauf Befehl namens holen. 715 00:39:34,860 --> 00:39:37,150 >> Dies ist sehr nützlich für die Fehlersuche. 716 00:39:37,150 --> 00:39:41,000 Was Sie hier bekommen, ist ein Cursor ist und dieses 717 00:39:41,000 --> 00:39:44,890 ein schöner Weg, Meteor hat optimierte Abrufdaten. 718 00:39:44,890 --> 00:39:48,270 Dieser Cursor hat alle Eigenschaften für Live-Aktualisierung und die Seite aktualisieren 719 00:39:48,270 --> 00:39:49,650 wenn etwas geändert hat. 720 00:39:49,650 --> 00:39:51,280 Aber es wird nicht zu uns die Daten. 721 00:39:51,280 --> 00:39:52,720 Wir können die Daten per holen zu bekommen. 722 00:39:52,720 --> 00:39:56,880 Und sehen wir einen Gegenstand haben, und es ist wie das, was wir in Mongo hatte, 723 00:39:56,880 --> 00:40:00,040 mit einer ID und dem Text haben wir in. 724 00:40:00,040 --> 00:40:04,200 >> Wie können wir also ein Element in Meteor einfügen? 725 00:40:04,200 --> 00:40:07,250 Nun, wir müssen nur Aufgaben. 726 00:40:07,250 --> 00:40:09,990 Und dann können wir das ausführen gleichen Einsatz Befehl, 727 00:40:09,990 --> 00:40:17,520 geben ein Wörterbuch oder ein Objekt mit dem gleichen Format, text 728 00:40:17,520 --> 00:40:22,340 und dann komme ich von der Konsole. 729 00:40:22,340 --> 00:40:27,240 Werfen Sie einen Blick über denn als ich dies tun, zeigt es auf der Website 730 00:40:27,240 --> 00:40:29,660 automatisch. 731 00:40:29,660 --> 00:40:33,291 >> Beachten Sie, dass Sie alles setzen Sie wollen in diesen Artikel. 732 00:40:33,291 --> 00:40:35,040 Es ist nicht zu haben, haben eine feste Struktur. 733 00:40:35,040 --> 00:40:39,790 Ich gleich das haben könnte Nummer drei und b gleich falsch. 734 00:40:39,790 --> 00:40:41,600 Und das alles funktioniert. 735 00:40:41,600 --> 00:40:46,000 Ich kann sogar beschließen, gehört ein Text überhaupt. 736 00:40:46,000 --> 00:40:48,320 Dies ist nur nicht empfohlen aber, weil dann Meteor 737 00:40:48,320 --> 00:40:50,920 nicht wissen, was angezeigt werden. 738 00:40:50,920 --> 00:40:53,110 Aber in jedem Fall haben wir bekommen Sie eine ID, und das ist, 739 00:40:53,110 --> 00:40:54,785 die ID des Objekts, die Sie verwenden können. 740 00:40:54,785 --> 00:41:01,120 741 00:41:01,120 --> 00:41:03,280 >> Wie wir mit weiter Schritt vier und fünf Schritt, 742 00:41:03,280 --> 00:41:06,870 das Tutorial wird Ihnen zeigen, dass Möglichkeiten Sie UI-Elemente mit erstellen 743 00:41:06,870 --> 00:41:13,130 HTML Sie wissen erstellen verschiedene Aufgaben. 744 00:41:13,130 --> 00:41:15,440 Lassen Sie uns Schritt vier wirklich schnell. 745 00:41:15,440 --> 00:41:18,290 Wir werden sehen, dass wir hinzugefügt ein Abschnitt über die Ereignisse. 746 00:41:18,290 --> 00:41:20,874 Vorlagen können Helfer, die uns Daten zu erhalten. 747 00:41:20,874 --> 00:41:22,040 Es kann aber auch Veranstaltungen nennen. 748 00:41:22,040 --> 00:41:25,300 Und das ist, wo Sachen wird sinnvoll, da Ereignisse 749 00:41:25,300 --> 00:41:28,590 werden, was passiert, wenn Sie auf verschiedene Dinge auf Ihrer Website. 750 00:41:28,590 --> 00:41:33,790 >> Hier ist unser Code erzählen uns, dieses Ereignis hinzuzufügen. 751 00:41:33,790 --> 00:41:38,860 Fügen Sie es, wenn Sie eingereicht haben etwas mit der Klasse neue Aufgabe. 752 00:41:38,860 --> 00:41:41,910 Was Sie hier haben, ist ein CSS-Selektor. 753 00:41:41,910 --> 00:41:45,870 Also das sieht einfach für eine HTML- Element, das die Klasse neue Aufgabe hat. 754 00:41:45,870 --> 00:41:47,940 Und es sieht für den Fall, wie einreichen. 755 00:41:47,940 --> 00:41:51,050 Weitere Veranstaltungen sind Klick, schweben, Doppelklick, 756 00:41:51,050 --> 00:41:54,450 ähnlich dem, was Sie in normalen HTML zu bekommen. 757 00:41:54,450 --> 00:41:56,770 >> Wie Sie es hier geben, ist jetzt eine Funktion. 758 00:41:56,770 --> 00:42:01,210 Und können Sie Ihre Code in dieser Funktion. 759 00:42:01,210 --> 00:42:06,360 Mit dieser Funktion ist es, was endet immer aufgerufen, wenn Sie diese neue Aufgabe vor. 760 00:42:06,360 --> 00:42:12,170 Schauen wir uns die HTML, nur damit wir zu verstehen, was diese neue Aufgabe. 761 00:42:12,170 --> 00:42:15,570 Wir haben ein Formular hier hinzugefügt mit Klasse neue Aufgabe. 762 00:42:15,570 --> 00:42:19,880 Und es hat einen Eingang, der Text wird. 763 00:42:19,880 --> 00:42:22,605 Und das ist, wo wir wird unsere neue Aufgaben hinzuzufügen. 764 00:42:22,605 --> 00:42:25,520 765 00:42:25,520 --> 00:42:29,780 >> Laufen wir Schritt vier in der Website, um zu sehen, wie es aussieht. 766 00:42:29,780 --> 00:42:32,710 Wir können zunächst beenden der MongoDB wir hatten 767 00:42:32,710 --> 00:42:35,300 von unserem vorherigen Beispiel mit Kontrolle C. 768 00:42:35,300 --> 00:42:37,690 Und seien wir ändern es in der Schritt vier Verzeichnis. 769 00:42:37,690 --> 00:42:41,000 770 00:42:41,000 --> 00:42:42,920 Wir Meteor erneut ausführen um den Server zu starten. 771 00:42:42,920 --> 00:42:46,850 772 00:42:46,850 --> 00:42:50,510 Und leider hatte ich Meteor in einem anderen Terminal ausgeführt. 773 00:42:50,510 --> 00:42:53,080 Also ich bin gerade dabei, sicherzustellen, dass diese geschlossen ist. 774 00:42:53,080 --> 00:43:01,805 Lassen Sie uns dies zu beenden und Wechsel Teil vier, Schritt vier. 775 00:43:01,805 --> 00:43:02,305 OK. 776 00:43:02,305 --> 00:43:11,220 777 00:43:11,220 --> 00:43:13,250 >> Jetzt ist unser Meteor Code ausgeführt wird. 778 00:43:13,250 --> 00:43:19,480 Und Sie sehen, dass es aktualisiert, ohne uns auch mit, um die Seite zu aktualisieren. 779 00:43:19,480 --> 00:43:24,410 Was hat sich hier geändert ist jetzt dass wir keine Aufgaben nicht, 780 00:43:24,410 --> 00:43:29,530 aber wir haben ein Formular hier, diese Textfeld ein, um unsere neue Aufgaben hinzuzufügen. 781 00:43:29,530 --> 00:43:31,550 Und wir können unsere Aufgabe hier eingeben. 782 00:43:31,550 --> 00:43:34,564 Ich komme aus der HTML-Seite. 783 00:43:34,564 --> 00:43:36,105 Wenn ich drücken Sie die Eingabetaste, wurde sie eingereicht. 784 00:43:36,105 --> 00:43:39,180 785 00:43:39,180 --> 00:43:44,540 >> Wir können sehen, was da passiert ist von der JavaScript-Code definiert. 786 00:43:44,540 --> 00:43:49,930 Was diese Funktion tat, war, nehmen Sie den Text aus dem Formular, 787 00:43:49,930 --> 00:43:53,680 und dann einfach tasks.insert genannt, wie wir in der Konsole. 788 00:43:53,680 --> 00:43:56,410 Sie wählten auch einen createdAt Datum hinzuzufügen. 789 00:43:56,410 --> 00:43:59,840 Dies ist, wie Sie es geben Sie die aktuelle Uhrzeit an. 790 00:43:59,840 --> 00:44:03,220 Danach löscht es die Form, indem sie sicher, dass der Wert ist die leere Zeichenkette. 791 00:44:03,220 --> 00:44:06,550 >> Und dann nennt es false zurück, um stellen Sie sicher, es passiert nichts mehr. 792 00:44:06,550 --> 00:44:10,350 Wenn Sie von einem false zurück Formularereignis, das die Ausführung stoppt. 793 00:44:10,350 --> 00:44:14,520 Sprich eine Form hat eine Aktion, wie sich einer PHP-Seite. 794 00:44:14,520 --> 00:44:16,980 Wenn Sie nicht zurückgekehrt war falsch, Sie true zurückgeben würde. 795 00:44:16,980 --> 00:44:18,500 Es wäre am Ende macht diese Forderung. 796 00:44:18,500 --> 00:44:20,590 Falsche abfängt und stoppt er recht. 797 00:44:20,590 --> 00:44:23,510 798 00:44:23,510 --> 00:44:28,610 >> Das war also ein wenig über Demo wie Meteor funktioniert, und wir haben 799 00:44:28,610 --> 00:44:30,980 war nach dem Tutorial für eine Weile. 800 00:44:30,980 --> 00:44:33,560 Und Sie können Sie sich kann frei, auch weiterhin tun. 801 00:44:33,560 --> 00:44:37,760 Es gibt eine Vielzahl von Ressourcen, und das Tutorial ist eigentlich nur, 802 00:44:37,760 --> 00:44:40,400 sehr gut zu erklären, was ist los. 803 00:44:40,400 --> 00:44:44,362 Ich möchte Ihnen nun zeigen, in die wenigen Minuten, die wir verlassen haben, 804 00:44:44,362 --> 00:44:46,320 was sind einige der Kühler Merkmale der Meteor, 805 00:44:46,320 --> 00:44:48,772 und welche einige der nützlicher Pakete. 806 00:44:48,772 --> 00:44:51,730 Einer der großen Vorteile von Meteor ist, dass Sie ein Paket-System haben. 807 00:44:51,730 --> 00:44:55,620 Sie können problemlos integrieren Code dass viele Tausende von Entwicklern 808 00:44:55,620 --> 00:44:58,840 Weltweit wurden geschrieben in Ihr Projekt Meteor. 809 00:44:58,840 --> 00:45:02,410 Ein Beispiel dafür ist, was Dir evtl. tun in Schritt neun des Tutorials, in denen 810 00:45:02,410 --> 00:45:07,435 Sie versuchen, Konten hinzuzufügen sind zu Ihrem Projekt Meteor. 811 00:45:07,435 --> 00:45:10,010 812 00:45:10,010 --> 00:45:13,690 Wenn wir eine CS50 PHP Projekt, müssten wir 813 00:45:13,690 --> 00:45:17,810 auf das Rahmenwerk verlassen oder eigenen Code, um 814 00:45:17,810 --> 00:45:20,820 sicher, dass wir sicher abzuwickeln Passwörter und Benutzernamen 815 00:45:20,820 --> 00:45:23,120 und Speichern der Datenbank und all das. 816 00:45:23,120 --> 00:45:25,670 >> Es stellt sich heraus Meteor hat einige Pakete an, dass für Sie tun, 817 00:45:25,670 --> 00:45:29,160 und es ist sehr einfach zu tun. 818 00:45:29,160 --> 00:45:31,950 Was wir tun können ist, fügen Sie ein paar Pakete. 819 00:45:31,950 --> 00:45:37,450 Lassen Sie uns so tun, dieses Recht Jetzt in unserem Konsole. 820 00:45:37,450 --> 00:45:42,460 Ich werde das Projekt zu beenden und im Augenblick in einfach todos gehen. 821 00:45:42,460 --> 00:45:47,450 822 00:45:47,450 --> 00:45:50,050 Nun, das ist einfach todos Das Projekt, das Sie 823 00:45:50,050 --> 00:45:53,500 wird, nachdem er getan haben mit Schritt 11 oder Schritt 12 824 00:45:53,500 --> 00:45:55,250 am Ende dieser Anleitung. 825 00:45:55,250 --> 00:45:58,642 Und lassen Sie uns schnell es betrachten, um zu sehen was sind die verschiedenen Funktionen, die wir haben. 826 00:45:58,642 --> 00:46:01,610 Lassen Sie nur sicherstellen, dass es läuft. 827 00:46:01,610 --> 00:46:04,400 Eine Weile Manchmal dauert es zu aktualisieren, aber hier ist es. 828 00:46:04,400 --> 00:46:09,710 >> Wir haben unsere Option zu verbergen vollständige Aufgaben, und wir können uns anmelden. 829 00:46:09,710 --> 00:46:11,770 Und das wurde abgeschafft Meteor-Paket. 830 00:46:11,770 --> 00:46:12,270 Es ist toll. 831 00:46:12,270 --> 00:46:14,910 Wir haben nun Benutzername und Passwort einloggen. 832 00:46:14,910 --> 00:46:19,170 Aber was, wenn wir hinzufügen wollten eine andere Art von Login-Mechanismus? 833 00:46:19,170 --> 00:46:22,560 Nehmen wir an, ich wollte, um sich anzumelden zu in die Meteor Konto. 834 00:46:22,560 --> 00:46:27,270 Ich werde Meteor Add laufen, und das ist die Syntax für das Hinzufügen von Paketen. 835 00:46:27,270 --> 00:46:32,160 Ich kann Konten und accounts.meteor sagen. 836 00:46:32,160 --> 00:46:35,720 Es wird nun zu finden das Paket und laden Sie es. 837 00:46:35,720 --> 00:46:40,480 Wie Sie sehen, habe ich nicht den richtigen Paketnamen. 838 00:46:40,480 --> 00:46:42,820 >> So, wie Sie herausfinden, über Pakete? 839 00:46:42,820 --> 00:46:46,380 Nun gibt es eine große Website, gemacht von den Meteor Personen zur Verfügung, 840 00:46:46,380 --> 00:46:47,780 genannt atmospherejs.com. 841 00:46:47,780 --> 00:46:52,520 Atmospherejs, ein Wort, Punkt com, ist eine große Repository 842 00:46:52,520 --> 00:46:57,660 für die Suche nach all der Meteor Pakete im Repository. 843 00:46:57,660 --> 00:47:05,140 Ich kann Konten zu suchen, und dann es wird mir zeigen alle relevanten Sachen, 844 00:47:05,140 --> 00:47:07,320 alle Pakete mit dem Namen des Kontos. 845 00:47:07,320 --> 00:47:10,180 846 00:47:10,180 --> 00:47:13,270 >> Während das geladen wird, können wir versuchen, Hinzufügen einiger anderer Pakete. 847 00:47:13,270 --> 00:47:19,380 Vielleicht ist die Meteor-Paket funktioniert nicht gerade jetzt, aber ich kann Facebook hinzufügen. 848 00:47:19,380 --> 00:47:22,860 849 00:47:22,860 --> 00:47:27,190 Ich kann das Konto hinzufügen und dann führen Sie das Meteor Projekt erneut. 850 00:47:27,190 --> 00:47:33,260 851 00:47:33,260 --> 00:47:36,900 Sobald dieser beginnt, mal sehen, was auf der Website geändert. 852 00:47:36,900 --> 00:47:40,010 853 00:47:40,010 --> 00:47:44,580 Sie können see-- ich könnte haben es hier zu aktualisieren. 854 00:47:44,580 --> 00:47:47,320 >> Ich habe eine Schaltfläche, um konfigurieren Facebook-Login. 855 00:47:47,320 --> 00:47:49,765 Und hier habe ich alle die Anweisungen Meteor 856 00:47:49,765 --> 00:47:52,960 hat für Sie vorbereitet Einrichten eines Facebook-App. 857 00:47:52,960 --> 00:47:58,990 Und Sie können das nutzen Informationen, um Ihre IDs hinzuzufügen. 858 00:47:58,990 --> 00:48:04,130 Sobald das erledigt ist, müssen Sie Facebook-Login, die in Ihrer Anwendung. 859 00:48:04,130 --> 00:48:08,559 >> Ich werde einfach zu bekommen eine App-ID und ein Geheimnis, 860 00:48:08,559 --> 00:48:10,100 nur um Ihnen zu zeigen, wie dies funktionieren könnte. 861 00:48:10,100 --> 00:48:16,000 862 00:48:16,000 --> 00:48:20,360 Sie erhalten ein Facebook-Account benötigen Book Entwickler Optionen. 863 00:48:20,360 --> 00:48:31,160 864 00:48:31,160 --> 00:48:35,290 Lassen Sie mich nur schnell die Meteor Schlüssel, die erforderlich sind. 865 00:48:35,290 --> 00:48:46,994 866 00:48:46,994 --> 00:48:49,160 Ich habe ein anderes Projekt Meteor dass ich gehe zu bedienen, 867 00:48:49,160 --> 00:48:55,590 und ich werde einfach nehmen die Schlüssel aus der Datei. 868 00:48:55,590 --> 00:49:14,410 869 00:49:14,410 --> 00:49:20,930 >> Und wenn ich es, werde ich nur in der Lage sein, diese Schlüssel in meinen Facebook zu kopieren. 870 00:49:20,930 --> 00:49:23,489 So, hier ist ein Schlüssel. 871 00:49:23,489 --> 00:49:24,280 Und das ist geheim. 872 00:49:24,280 --> 00:49:26,071 Sie sollte nicht sein den Austausch mit Menschen. 873 00:49:26,071 --> 00:49:28,870 874 00:49:28,870 --> 00:49:30,910 Und dann gibt es die App Geheimnis. 875 00:49:30,910 --> 00:49:33,560 Und das ist so Facebook weiß, dass Sie Sie sind. 876 00:49:33,560 --> 00:49:37,630 877 00:49:37,630 --> 00:49:39,080 Und Sie die Konfiguration speichern. 878 00:49:39,080 --> 00:49:45,160 879 00:49:45,160 --> 00:49:48,640 >> Ich denke, in den Prozess I meine Meteor App gestoppt. 880 00:49:48,640 --> 00:49:52,290 Also ich möchte nur sicher, es ist immer noch da. 881 00:49:52,290 --> 00:49:54,962 882 00:49:54,962 --> 00:49:58,610 OK, lassen Sie uns sicherstellen, dass unsere Meteor-Server ausgeführt wird, so dass die Web-Seite läuft. 883 00:49:58,610 --> 00:50:02,440 Beachten Sie, wenn wir aufhören, den Meteor Server, die Seite ist immer noch da. 884 00:50:02,440 --> 00:50:04,700 Es wird einfach nicht mehr aktualisieren. 885 00:50:04,700 --> 00:50:10,290 Erforderlich Die Meteor-Server dafür verantwortlich, dass die Seite Live. 886 00:50:10,290 --> 00:50:14,050 >> OK, ich habe ihm vorgelegten, und jetzt Ich kann mit Facebook einloggen. 887 00:50:14,050 --> 00:50:17,400 Jetzt ist es nur eine Frage der mit einer Facebook Pop-up- 888 00:50:17,400 --> 00:50:21,710 und die Umsetzung in Ihrem Konto Informationen und Anmeldung. 889 00:50:21,710 --> 00:50:24,520 890 00:50:24,520 --> 00:50:27,930 Sobald Sie das tun, könnte Facebook nag Sie für etwas mehr Sicherheit. 891 00:50:27,930 --> 00:50:29,810 Also werden wir einfach alles. 892 00:50:29,810 --> 00:50:34,110 Der Punkt ist, dass wenn Sie fertig sind mit, dass, müssen Sie Facebook-Login. 893 00:50:34,110 --> 00:50:37,850 >> Meteor hat eine Reihe von Andere Pakete auch. 894 00:50:37,850 --> 00:50:39,200 Sie können mit Google+ anmelden. 895 00:50:39,200 --> 00:50:40,500 Sie können mit GitHub anmelden. 896 00:50:40,500 --> 00:50:42,170 Sie können mit Twitter anmelden. 897 00:50:42,170 --> 00:50:44,870 Oder wenn Sie suchen, werden Sie finden viele andere Dinge 898 00:50:44,870 --> 00:50:49,170 wie Meetup, LinkedIn, und Meteor Developer. 899 00:50:49,170 --> 00:50:53,100 So Meteor Entwickler war die Paket, die ich suchte. 900 00:50:53,100 --> 00:50:56,170 Meteor hinzufügen Konten-Meteor-Entwickler. 901 00:50:56,170 --> 00:51:06,192 902 00:51:06,192 --> 00:51:07,900 Inzwischen I wollen auch empfehlen 903 00:51:07,900 --> 00:51:11,340 einige andere Pakete für Ihre Projekte. 904 00:51:11,340 --> 00:51:14,670 Es könnte nützlich sein, um zu beweisen sind die jQuery-Paket. 905 00:51:14,670 --> 00:51:17,909 So können Sie verwenden jQuery in Ihre Kunden. 906 00:51:17,909 --> 00:51:21,200 Sie konnte nur tun Sie es mit einer Zeile, und Meteor wird sicherstellen, dass Sie auf dem neuesten Stand sind 907 00:51:21,200 --> 00:51:21,825 auf jQuery. 908 00:51:21,825 --> 00:51:24,330 909 00:51:24,330 --> 00:51:27,450 Ich empfehle auch, houston: admin. 910 00:51:27,450 --> 00:51:31,550 >> Das ist wie eine Art von phpMyAdmin Art Werkzeug für Ihre MongoDB. 911 00:51:31,550 --> 00:51:33,890 Dies ermöglicht es Ihnen, zu bearbeiten Ihre Daten ganz einfach 912 00:51:33,890 --> 00:51:37,950 ohne auf den Mongo Shell gehen, wie ich früher im Seminar durchgeführt. 913 00:51:37,950 --> 00:51:43,160 914 00:51:43,160 --> 00:51:47,101 So, jetzt wo das ist laufen, lassen Sie uns laufen Meteor wieder und sehen, was wir tun können. 915 00:51:47,101 --> 00:51:56,240 916 00:51:56,240 --> 00:52:00,720 >> Man merkt, dass das Hinzufügen einiger Pakete Möglicherweise müssen Sie einige Warnungen zu präsentieren. 917 00:52:00,720 --> 00:52:02,720 Sie brauchen keine Sorgen zu machen darüber mit Houston. 918 00:52:02,720 --> 00:52:06,040 919 00:52:06,040 --> 00:52:10,810 So können wir nun die Möglichkeit haben, Meteor Admin konfigurieren. 920 00:52:10,810 --> 00:52:15,080 Und sie geben Ihnen die Anweisungen wenn Sie wollen, dass einzurichten. 921 00:52:15,080 --> 00:52:17,750 922 00:52:17,750 --> 00:52:20,440 >> Wir können jetzt auch auf / admin gehen. 923 00:52:20,440 --> 00:52:23,280 Dieses Spiel wird Ihnen von der Houston-Paket. 924 00:52:23,280 --> 00:52:27,470 Und das ist Meteor-Administrations-Oberfläche. 925 00:52:27,470 --> 00:52:30,660 Sie erstellen Sie einfach ein Admin-Konto, wie so. 926 00:52:30,660 --> 00:52:38,150 Und wenn Sie die Seite zu aktualisieren, können Sie haben einige Sammlungen auftauchen. 927 00:52:38,150 --> 00:52:40,980 928 00:52:40,980 --> 00:52:43,460 >> Es ist ein sehr nützliches Werkzeug, und ich empfehle es. 929 00:52:43,460 --> 00:52:46,717 930 00:52:46,717 --> 00:52:49,050 Sie können das, weil sehen Houston gab einige Fehler, 931 00:52:49,050 --> 00:52:52,330 wir keine Sammlungen haben zeigt sich gerade jetzt. 932 00:52:52,330 --> 00:52:56,800 Die Art, wie Sie houston benutzen würde ist darauf achten, diese Funktion wird 933 00:52:56,800 --> 00:52:58,860 in Ihrem einfach todos genannt. 934 00:52:58,860 --> 00:53:01,370 So houston nicht weiß, was meine Aufgaben. 935 00:53:01,370 --> 00:53:04,490 >> Wir haben ein Mongo Sammlung namens Aufgaben. 936 00:53:04,490 --> 00:53:11,390 Lassen Sie uns in einfachen-todos und einfach gehen stellen Sie sicher, dass in der JavaScript 937 00:53:11,390 --> 00:53:16,295 wir Aufgaben für unsere Sammlungen aufgenommen. 938 00:53:16,295 --> 00:53:19,340 939 00:53:19,340 --> 00:53:25,670 Wir haben nun gespeichert, und es wird den Bau die Anwendung, erfrischend. 940 00:53:25,670 --> 00:53:26,750 Und lassen Sie uns sehen. 941 00:53:26,750 --> 00:53:29,090 Jetzt haben wir einige Aufgaben. 942 00:53:29,090 --> 00:53:32,630 Und wir können ein paar neue Aufgaben hinzuzufügen. 943 00:53:32,630 --> 00:53:35,840 Aber wenn wir die Aufgaben übernehmen wollen, machen wir es mit der App selbst. 944 00:53:35,840 --> 00:53:39,660 945 00:53:39,660 --> 00:53:41,050 >> Jetzt können wir einige Daten hinzuzufügen. 946 00:53:41,050 --> 00:53:53,410 Hallo, dies ist eine Aufgabe. 947 00:53:53,410 --> 00:53:57,080 Es scheint irgendwie seltsam, dass wir nicht sehen, keine Aufgaben. 948 00:53:57,080 --> 00:54:00,290 949 00:54:00,290 --> 00:54:05,260 Wir möchten Sie vielleicht zu prüfen, ob wir irgendwelche haben Fehler hier, oder vielleicht woanders. 950 00:54:05,260 --> 00:54:08,810 951 00:54:08,810 --> 00:54:20,260 Wenn wir in die Admin zu gehen, dass scheint seltsam. 952 00:54:20,260 --> 00:54:24,080 Wenn Sie das Repository zu ziehen Nach diesem Seminar 953 00:54:24,080 --> 00:54:27,580 Ich werde dafür sorgen, dass einfach todos arbeitet mit Houston. 954 00:54:27,580 --> 00:54:30,370 Leider hat es nicht zu scheinen sein Arbeits in diesem Augenblick. 955 00:54:30,370 --> 00:54:34,810 956 00:54:34,810 --> 00:54:37,640 >> Gibt es noch weitere Fragen? 957 00:54:37,640 --> 00:54:41,800 Houston normalerweise ein Tool, das sehr gut funktioniert. 958 00:54:41,800 --> 00:54:44,510 Houston spezifisch ist etwas instabiler als die anderen, 959 00:54:44,510 --> 00:54:49,470 aber ich kann es nur empfehlen, wenn es funktioniert. 960 00:54:49,470 --> 00:54:50,080 Ja. 961 00:54:50,080 --> 00:54:52,395 >> ZIELGRUPPE: Was können Sie tun mit dem Facebook-Paket 962 00:54:52,395 --> 00:54:54,270 sobald ein Benutzer angemeldet ist in mit ihren Facebook? 963 00:54:54,270 --> 00:54:55,978 >> ROGER ZURAWICKI: Einmal ein Benutzer angemeldet ist, 964 00:54:55,978 --> 00:54:59,540 können Sie Anrufe auf der Facebook-API zu machen. 965 00:54:59,540 --> 00:55:02,890 Eine Menge, dass liegt eher in wie Facebook öffnet ihre API. 966 00:55:02,890 --> 00:55:05,120 Meteor, stellen Sie sicher, müssen Sie die Verbindung. 967 00:55:05,120 --> 00:55:09,300 Aber alles, was danach ist eine Frage zu lernen, wie die Facebook-API verwenden. 968 00:55:09,300 --> 00:55:10,216 ZIELGRUPPE: [unverständlich]. 969 00:55:10,216 --> 00:55:17,756 970 00:55:17,756 --> 00:55:18,880 ROGER ZURAWICKI: In Ordnung. 971 00:55:18,880 --> 00:55:21,670 Vielen Dank für Diese CS50 Seminar in Meteor. 972 00:55:21,670 --> 00:55:24,060 Wenn Sie irgendwelche Fragen haben, können Sie mich emailen 973 00:55:24,060 --> 00:55:28,319 an meine Email-Adresse unter dem Seminar aufgeführt. 974 00:55:28,319 --> 00:55:30,110 Und ich werde glücklich sein beantworten Ihre Fragen. 975 00:55:30,110 --> 00:55:33,020 Ich werde auch in der sein CS50 Hackathon sollten 976 00:55:33,020 --> 00:55:35,550 Sie brauchen Hilfe mit Ihrem Meteor Projekte. 977 00:55:35,550 --> 00:55:37,650 Vielen Dank für das Ansehen. 978 00:55:37,650 --> 00:55:38,816