1 00:00:00,000 --> 00:00:00,500 2 00:00:00,500 --> 00:00:10,960 [Muzik bermain] 3 00:00:10,960 --> 00:00:12,960 ROGER ZURAWICKI: Hi, saya Nama Roger Zurawicki, 4 00:00:12,960 --> 00:00:16,410 dan saya akan meliputi seminar CS50 Meteor. 5 00:00:16,410 --> 00:00:21,520 Meteor adalah satu rangka kerja baru ditumpukan kepada jenis yang baru web, 6 00:00:21,520 --> 00:00:25,220 bukan PHP membuat permintaan depan dan ke belakang jenis 7 00:00:25,220 --> 00:00:29,070 daripada web yang kita lihat dalam set PHPP, tetapi JavaScript lebih dinamik 8 00:00:29,070 --> 00:00:31,370 bahagian web. 9 00:00:31,370 --> 00:00:36,260 Perkara yang boleh dilakukan Meteor termasuk Pengemaskinian Live 10 00:00:36,260 --> 00:00:42,380 dan segera berkomunikasi antara pengguna laman web yang sama. 11 00:00:42,380 --> 00:00:46,420 >> Untuk seminar ini, kita mempunyai kod dihoskan di GitHub saya. 12 00:00:46,420 --> 00:00:49,690 Anda boleh pergi ke URL ini dan memuat turun ia. 13 00:00:49,690 --> 00:00:53,085 Jika anda tahu bagaimana untuk menggunakan Git, anda boleh mengklon repository. 14 00:00:53,085 --> 00:00:55,460 Jika anda tidak tahu bagaimana untuk menggunakan GIT atau belum digunakan GitHub, 15 00:00:55,460 --> 00:00:57,030 itu benar-benar baik. 16 00:00:57,030 --> 00:01:00,480 Saya akan menunjukkan kepada anda benar-benar cepat bagaimana kita boleh pergi ke GitHub, 17 00:01:00,480 --> 00:01:03,604 dan ada pilihan untuk turun zip yang di sana. 18 00:01:03,604 --> 00:01:06,770 Sebaik sahaja anda memuat turun direktori ini, anda boleh memulakan bermain dengan kod kami. 19 00:01:06,770 --> 00:01:10,200 20 00:01:10,200 --> 00:01:13,190 >> Maklumat lebih lanjut mengenai Meteor boleh didapati di meteor.com. 21 00:01:13,190 --> 00:01:16,580 Dalam folder Seminar, saya sebenarnya mempunyai beberapa projek Meteor boleh kita gunakan. 22 00:01:16,580 --> 00:01:20,380 23 00:01:20,380 --> 00:01:26,400 Salah satu folder yang kita ada dalam kita projek seminar adalah aplikasi todos itu. 24 00:01:26,400 --> 00:01:28,780 Jadi, jika saya pergi ke dalamnya saya, mempunyai Meteor dipasang. 25 00:01:28,780 --> 00:01:35,690 Jadi untuk menjalankannya, saya hanya perlu menaip Meteor, dan Meteor akan dipasang. 26 00:01:35,690 --> 00:01:38,310 Seperti yang anda lihat, kita perlu memastikan kami memasang Meteor. 27 00:01:38,310 --> 00:01:40,562 Jadi, saya hanya akan menjalankannya sekali lagi 28 00:01:40,562 --> 00:01:42,520 memastikan bahawa Meteor dipasang dengan betul. 29 00:01:42,520 --> 00:01:46,370 30 00:01:46,370 --> 00:01:48,450 >> Walaupun saya mempunyai Meteor memasang, saya boleh menunjukkan kepada anda 31 00:01:48,450 --> 00:01:53,760 beberapa demo langsung tapak Meteor akan hidup sekarang di internet. 32 00:01:53,760 --> 00:01:57,990 Saya mempunyai demo app kami. 33 00:01:57,990 --> 00:02:00,740 Anda boleh mengaksesnya di URL berikut. 34 00:02:00,740 --> 00:02:06,350 Ini adalah aplikasi untuk melaksanakannya kami mempunyai di dalam direktori seminar kami. 35 00:02:06,350 --> 00:02:09,940 URL bagi ini adalah rozu-rabbit.meteor.com. 36 00:02:09,940 --> 00:02:14,782 Anda akan melihat bahawa Meteor akan sebenarnya menjadi tuan rumah projek Meteor anda secara percuma. 37 00:02:14,782 --> 00:02:17,490 Dan pada akhir seminar tersebut, anda boleh melakukan ini juga. 38 00:02:17,490 --> 00:02:20,550 39 00:02:20,550 --> 00:02:22,160 >> Ini adalah untuk melakukan senarai apl. 40 00:02:22,160 --> 00:02:27,740 Dan anda boleh log masuk, buat akaun, dan menambah tugas. 41 00:02:27,740 --> 00:02:30,020 Anda boleh membuat akaun seperti demikian. 42 00:02:30,020 --> 00:02:33,050 43 00:02:33,050 --> 00:02:35,850 Dan sekarang, setelah anda mempunyai akaun, anda boleh menambah tugas. 44 00:02:35,850 --> 00:02:42,780 Sebagai contoh, salah satu tugas saya mungkin perlu pergi mengambil dobi saya. 45 00:02:42,780 --> 00:02:45,160 Dan jika anda mengenai perkara ini laman web dalam talian, anda akan 46 00:02:45,160 --> 00:02:49,790 sebenarnya melihat tugas ini pada komputer anda dalam masa nyata. 47 00:02:49,790 --> 00:02:53,760 >> Saya boleh menunjukkan demo cepat ini dengan membuka rozu-arnab 48 00:02:53,760 --> 00:02:56,700 dalam tab yang lain dengan URL yang sama. 49 00:02:56,700 --> 00:03:00,360 Dan kita melihat bahawa data yang sama datang. 50 00:03:00,360 --> 00:03:02,240 Kami juga boleh menjalankannya di pelayar yang lain. 51 00:03:02,240 --> 00:03:03,420 Katakanlah saya menjalankannya dalam Safari. 52 00:03:03,420 --> 00:03:04,720 Dengan cara itu kita tidak log masuk. 53 00:03:04,720 --> 00:03:07,750 54 00:03:07,750 --> 00:03:11,060 Oleh itu, kita mempunyai Meteor yang sama aplikasi, dan sekali ia muatkan, 55 00:03:11,060 --> 00:03:13,910 kita akan melihat data yang sama kami lakukan pada yang pertama. 56 00:03:13,910 --> 00:03:16,710 Seperti yang anda lihat, saya tidak log masuk di sini. 57 00:03:16,710 --> 00:03:20,000 Dan apabila data cek penonton, ia mengemas kini pada semua pelayar 58 00:03:20,000 --> 00:03:20,910 pada masa yang sama. 59 00:03:20,910 --> 00:03:23,740 Ini adalah salah satu yang benar-benar ciri sejuk tentang Meteor. 60 00:03:23,740 --> 00:03:27,700 Dengan hampir tidak ada kerja, anda mempunyai aplikasi pengemaskinian secara langsung 61 00:03:27,700 --> 00:03:31,240 bahawa perubahan pada semua peranti anda sekaligus. 62 00:03:31,240 --> 00:03:36,690 >> Jika saya menyemak kotak semak di sini dalam senarai saya lakukan, kita akan mempunyai, 63 00:03:36,690 --> 00:03:41,230 dalam pelayar Chrome saya yang lain, perkara yang diperiksa. 64 00:03:41,230 --> 00:03:42,605 Dan ini berlaku serta-merta. 65 00:03:42,605 --> 00:03:46,340 66 00:03:46,340 --> 00:03:47,280 Baiklah. 67 00:03:47,280 --> 00:03:52,730 Jadi ia kelihatan seperti Meteor pemasangan bersedia sekarang. 68 00:03:52,730 --> 00:03:57,000 Jadi sekarang mari kita kembali kepada app todos dan menjalankan ini dalam negara. 69 00:03:57,000 --> 00:04:01,599 >> Jika anda mempunyai projek Meteor, anda boleh hanya menjalankannya dengan Meteor arahan. 70 00:04:01,599 --> 00:04:03,640 Apabila anda melakukan ini, Meteor akan melakukan beberapa persiapan 71 00:04:03,640 --> 00:04:06,120 memastikan semua kod anda adalah di dalam semakan. 72 00:04:06,120 --> 00:04:12,440 Dan kemudian ia akan memberitahu anda bahawa projek adalah sedia untuk dihidang. 73 00:04:12,440 --> 00:04:17,750 Anda mungkin perlu untuk membolehkan anda firewall, jika blok komputer anda anda. 74 00:04:17,750 --> 00:04:22,440 >> Jadi apa Meteor memberitahu saya sekarang adalah bahawa pada laman web ini 75 00:04:22,440 --> 00:04:26,100 tempatan ke komputer saya, saya dapat melihat apa projek Meteor ini. 76 00:04:26,100 --> 00:04:29,290 Ambil perhatian bahawa sekarang, aplikasi saya adalah tidak boleh diakses kepada internet. 77 00:04:29,290 --> 00:04:35,170 Kami akan meliputi bagaimana untuk membawa Meteor anda app ke laman web secara langsung sedikit kemudian. 78 00:04:35,170 --> 00:04:40,510 Jadi, saya hanya akan menyalin ini URL sekarang dan pergi ke dalam Google Chrome. 79 00:04:40,510 --> 00:04:42,600 >> Dan ini adalah untuk melakukan senarai dari contoh. 80 00:04:42,600 --> 00:04:46,080 Anda boleh melihat mereka dilaksanakan beberapa ciri-ciri yang lebih di sini. 81 00:04:46,080 --> 00:04:49,210 Kami mempunyai tab yang berbeza, kita mempunyai ciri-ciri akaun sama, 82 00:04:49,210 --> 00:04:52,141 dan kita boleh menambah senarai baru. 83 00:04:52,141 --> 00:04:54,140 Kini, salah satu benar-benar ciri sejuk tentang Meteor 84 00:04:54,140 --> 00:04:57,450 adalah bahawa bukan sahaja boleh ini bekerja pada pelayar web anda, 85 00:04:57,450 --> 00:05:00,030 tetapi anda juga boleh membuat asli iPhone dan Android 86 00:05:00,030 --> 00:05:02,990 aplikasi melalui alat yang dipanggil PhoneGap. 87 00:05:02,990 --> 00:05:06,740 >> Jadi beberapa projek-projek akan datang pra-konfigurasi untuk berjalan 88 00:05:06,740 --> 00:05:08,700 pada iOS, seperti aplikasi todos ini. 89 00:05:08,700 --> 00:05:14,780 Jadi apa yang saya perlu lakukan untuk menjalankannya dalam iOS sedang menaip Meteor, jalankan, dan kemudian iOS. 90 00:05:14,780 --> 00:05:17,540 Dan apabila saya berbuat demikian, Meteor akan menyediakan pakej lagi. 91 00:05:17,540 --> 00:05:21,670 Dan kemudian, sekali ia bersedia IA AKAN memuatkan simulator iOS pada arahan saya. 92 00:05:21,670 --> 00:05:24,745 Nota anda hanya boleh menjalankan aplikasi iOS jika anda mempunyai komputer Mac. 93 00:05:24,745 --> 00:05:27,650 94 00:05:27,650 --> 00:05:30,730 Anda boleh menjalankan aplikasi anda Android pada semua platform. 95 00:05:30,730 --> 00:05:34,070 96 00:05:34,070 --> 00:05:38,290 >> Jadi sekarang anda boleh melihat bahawa iPhone saya simulator datang pada skrin saya. 97 00:05:38,290 --> 00:05:40,370 Dan dalam hanya seketika, ia akan memuatkan dengan app. 98 00:05:40,370 --> 00:05:46,070 99 00:05:46,070 --> 00:05:48,490 Jika kita membuat ia hanya sedikit yang lebih kecil untuk muat pada skrin, 100 00:05:48,490 --> 00:05:50,780 kita lihat kita mempunyai aplikasi iPhone kami. 101 00:05:50,780 --> 00:05:53,220 Dan hanya supaya kita tidak keliru, mari kita membuat 102 00:05:53,220 --> 00:05:59,790 memastikan kita berada di yang sama laman web, tuan rumah tempatan 3000. 103 00:05:59,790 --> 00:06:03,490 >> Jadi di sini adalah satu contoh aplikasi Meteor yang saya mempunyai, 104 00:06:03,490 --> 00:06:08,770 app todos itu dengan berlari, kedua-dua di telefon dan pada pelayar web. 105 00:06:08,770 --> 00:06:10,770 Dan apabila saya menukar barangan dalam penyemak imbas web, 106 00:06:10,770 --> 00:06:12,675 ia segera pergi ke telefon. 107 00:06:12,675 --> 00:06:16,500 Dan saya boleh memadam sesuatu di telefon, dan ia berubah dalam penyemak imbas web. 108 00:06:16,500 --> 00:06:21,050 >> Sekarang, biasanya untuk mewujudkan asli aplikasi telefon untuk iOS atau Android, 109 00:06:21,050 --> 00:06:26,090 anda perlu tahu sama ada atau Jawa Objektif C. teknologi Penggunaan Meteor 110 00:06:26,090 --> 00:06:29,240 untuk membenarkan JavaScript untuk beroperasi sebagai app anda dipanggil PhoneGap. 111 00:06:29,240 --> 00:06:31,320 Apa aplikasi anda pada dasarnya adalah merupakan sebuah pelayar web. 112 00:06:31,320 --> 00:06:34,500 Meteor dan mengendalikan semua bahagian-bahagian yang rumit yang terlibat 113 00:06:34,500 --> 00:06:39,820 untuk membawa bahawa pelayar web untuk iPhone atau peranti Android anda. 114 00:06:39,820 --> 00:06:42,210 Anda boleh melihat bahawa antara muka pengguna adalah licin, 115 00:06:42,210 --> 00:06:45,290 dan ia kelihatan dan berasa sangat sama seperti aplikasi asli. 116 00:06:45,290 --> 00:06:48,620 Notis bahawa jika saya pergi ke rumah skrin sekarang, saya juga mendapatkan ikon. 117 00:06:48,620 --> 00:06:50,880 Ini bukan laman web seperti anda akan mendapati dalam Safari. 118 00:06:50,880 --> 00:06:51,860 Ini adalah aplikasi sendiri. 119 00:06:51,860 --> 00:06:54,130 Anda boleh memasang dan memadamnya jika anda ingin. 120 00:06:54,130 --> 00:06:59,500 121 00:06:59,500 --> 00:07:04,436 >> Kami secara ringkas boleh menunjukkan kepada anda apa kod untuk jenis ini todos app kelihatan seperti. 122 00:07:04,436 --> 00:07:08,260 Jika anda melihat dalam folder yang todos, anda akan melihat terdapat banyak folder. 123 00:07:08,260 --> 00:07:11,440 Tetapi lama-kursus seminar ini, kita akan 124 00:07:11,440 --> 00:07:14,780 memahami apa yang setiap folder digunakan untuk. 125 00:07:14,780 --> 00:07:17,830 Mari kita pergi ke dalam pangkalan jadi kami boleh melihat gambar-gambar yang sedikit lebih baik. 126 00:07:17,830 --> 00:07:20,410 >> Saya akan tekan Kawalan C untuk menghentikan pelayan, 127 00:07:20,410 --> 00:07:22,770 dan kini saya kembali di app todos itu. 128 00:07:22,770 --> 00:07:26,660 Saya mempunyai folder yang berbeza di sini, seperti folder pelanggan, folder pelayan. 129 00:07:26,660 --> 00:07:30,500 Dan folder ini hanya bermakna segala-galanya dalam folder pelanggan 130 00:07:30,500 --> 00:07:32,630 mendapat dilaksanakan pada pelayar web anda. 131 00:07:32,630 --> 00:07:35,530 Segala-galanya dalam folder pelayan mendapat dilaksanakan pada pelayan. 132 00:07:35,530 --> 00:07:38,100 >> Apa yang saya mahu menuding keluar ialah bahawa apa yang kita mempunyai 133 00:07:38,100 --> 00:07:42,140 apabila kami terpaksa berjalan dan telefon kami pelayar web kami, ini adalah pelanggan. 134 00:07:42,140 --> 00:07:45,730 Tetapi apa yang berjalan dalam terminal, itu pelayan. 135 00:07:45,730 --> 00:07:48,710 Kami mempunyai folder lain, seperti lib, yang merupakan kod perpustakaan, 136 00:07:48,710 --> 00:07:51,050 seperti pembantu anda fungsi, yang anda boleh 137 00:07:51,050 --> 00:07:53,710 digunakan pada kedua-dua pelanggan dan pelayan. 138 00:07:53,710 --> 00:07:55,820 Dan kemudian anda mempunyai awam folder dan sumber 139 00:07:55,820 --> 00:07:59,310 folder perlu untuk mendapatkan imej dan CSS lain dimuatkan. 140 00:07:59,310 --> 00:08:02,630 141 00:08:02,630 --> 00:08:09,360 >> Jika anda telah Meteor dipasang, kita akan terus dengan tutorial untuk Meteor. 142 00:08:09,360 --> 00:08:12,790 Anda boleh pergi ke URL ini, meteor.com/install, 143 00:08:12,790 --> 00:08:17,990 untuk mendapatkan baris arahan yang saya menunjukkan anda yang memasang Meteor. 144 00:08:17,990 --> 00:08:20,240 Kami akan pergi melalui pertama beberapa langkah untuk mendapatkan yang lebih baik 145 00:08:20,240 --> 00:08:22,760 rasa tentang cara memasang Meteor. 146 00:08:22,760 --> 00:08:28,000 >> Tetapi pertama, saya fikir ia adalah penting bahawa kita mengkaji sedikit JavaScript. 147 00:08:28,000 --> 00:08:32,360 Untuk menunjukkan kepada anda beberapa contoh bagaimana pengetahuan C kami boleh diterjemahkan 148 00:08:32,360 --> 00:08:34,950 untuk JavaScript, saya telah mencipta beberapa contoh. 149 00:08:34,950 --> 00:08:36,940 Mereka adalah di dalam direktori js itu. 150 00:08:36,940 --> 00:08:41,750 Oleh itu, jika dalam seminar folder anda melihat, ada folder yang dipanggil js. 151 00:08:41,750 --> 00:08:44,540 Dan di sini, kami mempunyai beberapa contoh. 152 00:08:44,540 --> 00:08:50,120 >> Mari kita membuka yang pertama contoh dan melihat dengan cepat. 153 00:08:50,120 --> 00:08:53,980 Apa yang kita lihat adalah standard anda hello perintah dunia. 154 00:08:53,980 --> 00:08:56,520 Anda notis C yang anda mempunyai agak beberapa baris. 155 00:08:56,520 --> 00:09:00,490 Dan sebagai pelajar CS50 tahu, kita memerlukan fungsi utama, 156 00:09:00,490 --> 00:09:05,730 dan kita perlu termasuk standard yang Pustaka I / O untuk memanggil printf. 157 00:09:05,730 --> 00:09:09,320 >> Mari kita lihat bagaimana JavaScript membandingkan. 158 00:09:09,320 --> 00:09:11,560 Saya akan membuka ex1.js. 159 00:09:11,560 --> 00:09:14,650 Mengulas keluar ialah apa yang C kod akan kelihatan seperti, 160 00:09:14,650 --> 00:09:17,550 dan garis bawah adalah semua anda perlu menjalankan dalam Nod. 161 00:09:17,550 --> 00:09:20,452 Anda tidak perlu satu fungsi utama, anda tidak perlu memasukkan apa-apa fail, 162 00:09:20,452 --> 00:09:21,660 dan anda tidak perlu untuk kembali. 163 00:09:21,660 --> 00:09:23,810 Anda hanya memanggil console.log. 164 00:09:23,810 --> 00:09:26,370 Ini adalah sama dengan printf anda. 165 00:09:26,370 --> 00:09:29,310 >> Dan juga ia mengambil yang sama hujah printf akan. 166 00:09:29,310 --> 00:09:33,870 Dan untuk menjalankannya, bukan berjalan membuat EX1, 167 00:09:33,870 --> 00:09:38,930 anda hanya akan memanggil ex1.js. Nod 168 00:09:38,930 --> 00:09:41,830 Anda menulis Nod dan kemudian fail, dan ia akan berjalan. 169 00:09:41,830 --> 00:09:43,580 Ia tidak dapat disusun. 170 00:09:43,580 --> 00:09:45,970 JavaScript adalah bahasa yang diterjemahkan. 171 00:09:45,970 --> 00:09:49,150 Jadi ia tidak perlu disusun sebelum ia berjalan. 172 00:09:49,150 --> 00:09:53,450 Jika saya mahu menjalankan ex1.c, Saya perlu membuat ia pertama, 173 00:09:53,450 --> 00:09:59,160 dan kemudian saya boleh menjalankan laku untuk mendapatkan output yang sama. 174 00:09:59,160 --> 00:10:02,460 >> Mari kita cepat meliputi beberapa konsep JavaScript lain. 175 00:10:02,460 --> 00:10:04,490 Mari kita lihat contoh dua. 176 00:10:04,490 --> 00:10:14,690 Dalam ex2.js, dalam ex2.c, kita boleh melihat bahawa kita mempunyai beberapa kod. 177 00:10:14,690 --> 00:10:16,550 Biar saya cepat pergi ke editor teks yang lebih baik 178 00:10:16,550 --> 00:10:18,400 yang akan menunjukkan ini produk baru yang lebih baik. 179 00:10:18,400 --> 00:10:21,760 180 00:10:21,760 --> 00:10:22,380 Baiklah. 181 00:10:22,380 --> 00:10:24,190 Di sini kita mempunyai contoh 2.c. 182 00:10:24,190 --> 00:10:27,360 Di sini kita mempunyai jenis yang berbeza bahawa kita mencetak. 183 00:10:27,360 --> 00:10:30,880 Dan seperti yang kita tahu, printf mengambil peratus hujah-hujah yang berbeza 184 00:10:30,880 --> 00:10:34,050 untuk mengakses keping yang berbeza data. 185 00:10:34,050 --> 00:10:36,840 Jika kita ingin mencetak tali, kita panggil% s. 186 00:10:36,840 --> 00:10:40,390 Jika kita mahu panggil terapung yang jumlah titik, kita dipanggil% f. 187 00:10:40,390 --> 00:10:45,810 Dan tidak ada cara mudah untuk memanggil Boolean dengan nilai benar atau salah itu. 188 00:10:45,810 --> 00:10:50,760 Tetapi jika anda menggunakan% d, anda boleh mendapatkan satu 0 atau 1 untuk palsu dan benar. 189 00:10:50,760 --> 00:10:53,270 >> JavaScript adalah sedikit lebih bagus untuk kita. 190 00:10:53,270 --> 00:10:57,740 Dalam JavaScript, mari kita lihat beberapa perbezaan yang kita ada dalam fail ini. 191 00:10:57,740 --> 00:11:05,790 Pertama, anda dapati di C kita perlu memulakan setiap pemboleh ubah dengan jenis. 192 00:11:05,790 --> 00:11:06,940 S adalah bintang arang. 193 00:11:06,940 --> 00:11:08,930 Ia rentetan, dan ia tidak boleh menjadi apa-apa jenis. 194 00:11:08,930 --> 00:11:10,450 N adalah apungan. 195 00:11:10,450 --> 00:11:11,780 B adalah bool. 196 00:11:11,780 --> 00:11:14,220 >> Tetapi dalam JavaScript, ada jenis dinamik. 197 00:11:14,220 --> 00:11:16,400 Ini bermakna bahawa anda tidak melakukan perlu memberitahu JavaScript 198 00:11:16,400 --> 00:11:17,860 apa jenis pembolehubah anda akan. 199 00:11:17,860 --> 00:11:22,730 Anda hanya mengatakan var untuk berubah-ubah, nama pembolehubah, dan kemudian nilainya. 200 00:11:22,730 --> 00:11:24,690 Jadi var boleh menjadi apa-apa yang benar-benar. 201 00:11:24,690 --> 00:11:25,640 Ia boleh menjadi rentetan. 202 00:11:25,640 --> 00:11:27,300 Ia boleh menjadi beberapa titik terapung. 203 00:11:27,300 --> 00:11:28,560 Ia boleh menjadi watak. 204 00:11:28,560 --> 00:11:31,250 Ia boleh menjadi satu Boolean. 205 00:11:31,250 --> 00:11:34,380 Dan log konsol berfungsi sedikit berbeza. 206 00:11:34,380 --> 00:11:37,340 Jika anda ingin cetak nombor, anda memanggil% d. 207 00:11:37,340 --> 00:11:41,740 Tetapi kebanyakan nilai-nilai boleh dicetak sebagai tali baik-baik saja. 208 00:11:41,740 --> 00:11:46,220 >> Mari kita berjalan ini dalam Nod untuk melihat apa yang akan berlaku. 209 00:11:46,220 --> 00:11:51,880 Boleh saya hubungi ex2.js Nod, dan kita mendapatkan printf 210 00:11:51,880 --> 00:11:56,870 dengan nilai-nilai CS50, N sebagai nombor titik terapung, 211 00:11:56,870 --> 00:12:00,620 dan kemudian B sebagai Boolean ditukar kepada rentetan yang benar. 212 00:12:00,620 --> 00:12:03,830 Bagaimana pula jika kita dibuat contoh 2.c? 213 00:12:03,830 --> 00:12:09,630 Baik, kami masih mempunyai beberapa lebih gangguan dengan printf. 214 00:12:09,630 --> 00:12:13,110 Perhatikan bahawa titik terapung jumlah perlu diformat dengan betul, 215 00:12:13,110 --> 00:12:18,120 dan bahawa Boolean tidak boleh semata-mata dipaparkan sebagai benar atau palsu. 216 00:12:18,120 --> 00:12:18,620 Baiklah. 217 00:12:18,620 --> 00:12:22,680 Sekarang mari kita lihat contoh tiga. 218 00:12:22,680 --> 00:12:26,470 Dalam contoh tiga, kita menunjukkan bagaimana anda akan menggunakan untuk gelung. 219 00:12:26,470 --> 00:12:27,630 Malah, ia adalah sangat mudah. 220 00:12:27,630 --> 00:12:31,430 Salah satu perkara yang menarik mengenai JavaScript adalah bahawa ia adalah C berasaskan. 221 00:12:31,430 --> 00:12:33,920 Ini bermakna bahawa banyak anda kod akan kelihatan sangat serupa 222 00:12:33,920 --> 00:12:36,490 dan rasa lebih kurang sama. 223 00:12:36,490 --> 00:12:39,220 Dalam satu untuk gelung, satu-satunya perkara yang telah benar-benar berubah di sini 224 00:12:39,220 --> 00:12:41,840 adalah bukan int i, kita mempunyai var i. 225 00:12:41,840 --> 00:12:45,470 Kita masih boleh menetapkan ia untuk menghargai sifar, periksa bahawa itu kurang daripada lima, 226 00:12:45,470 --> 00:12:49,390 dan bertambah sebanyak satu dengan operator ++ itu. 227 00:12:49,390 --> 00:12:56,286 Kami menyeru console.log pada i, dan bahawa kami akan mencetak beberapa dengan setiap baris. 228 00:12:56,286 --> 00:12:58,410 Mari kita menjalankannya benar-benar cepat untuk melihat apa output. 229 00:12:58,410 --> 00:13:02,320 230 00:13:02,320 --> 00:13:03,880 Kami mendapatkan beberapa baru dalam setiap baris. 231 00:13:03,880 --> 00:13:06,920 Satu lagi perkara yang saya mahu anda untuk melihat dengan console.log 232 00:13:06,920 --> 00:13:09,960 adalah anda tidak perlu menulis garis sendeng terbalik n bagi barisan baru. 233 00:13:09,960 --> 00:13:12,480 Console.log akan mencetak segala-galanya di talian sendiri. 234 00:13:12,480 --> 00:13:14,585 Itu adalah ciri yang bagus yang memberikan kita JavaScript. 235 00:13:14,585 --> 00:13:18,440 236 00:13:18,440 --> 00:13:22,600 >> Sekarang mari kita membuka contoh empat. 237 00:13:22,600 --> 00:13:28,710 Dalam contoh empat, pertama dalam C, kita memanggil fungsi beberapa. 238 00:13:28,710 --> 00:13:33,290 Perhatikan bahawa kita perlu mengisytiharkan fungsi sebelum kita menggunakannya dalam utama. 239 00:13:33,290 --> 00:13:37,250 Jika kita mempunyai utama pertama dan kemudian menambah dan kemudian tinggi, membuat, 240 00:13:37,250 --> 00:13:39,540 dentang, atau GCC akan memberikan kita satu kesilapan berkata 241 00:13:39,540 --> 00:13:41,060 bahawa ia tidak tahu apa yang tinggi. 242 00:13:41,060 --> 00:13:42,780 Ia tidak tahu apa add adalah. 243 00:13:42,780 --> 00:13:46,480 Jadi, dalam C, anda perlu cerewet tentang perintah di mana anda memanggil fungsi anda. 244 00:13:46,480 --> 00:13:49,220 245 00:13:49,220 --> 00:13:51,310 >> Mari kita lihat bagaimana anda boleh melakukan ini dalam JavaScript. 246 00:13:51,310 --> 00:13:56,060 Kami mempunyai fail yang berbeza kerana terdapat adalah beberapa cara yang berbeza untuk melakukannya. 247 00:13:56,060 --> 00:13:58,950 Salah satu cara adalah cukup banyak terjemahan langsung. 248 00:13:58,950 --> 00:14:02,180 Oleh kerana fungsi dalam C kembali jenis, dan JavaScript 249 00:14:02,180 --> 00:14:05,210 tidak benar-benar tahu atau penjagaan tentang apa jenis anda kembali, 250 00:14:05,210 --> 00:14:06,300 anda tidak menulis jenis. 251 00:14:06,300 --> 00:14:08,100 Sebaliknya, anda hanya perlu untuk menulis fungsi, 252 00:14:08,100 --> 00:14:11,180 dan semuanya cantik banyak yang sama seperti sebelum ini. 253 00:14:11,180 --> 00:14:14,630 >> Apabila anda mempunyai satu pemboleh ubah, seperti dalam menambah, kita hanya perlu menulis x dan y. 254 00:14:14,630 --> 00:14:16,060 Kami tidak perlu berkata x adalah int. 255 00:14:16,060 --> 00:14:18,940 Kami tidak perlu berkata y adalah int. 256 00:14:18,940 --> 00:14:21,030 Kami kembali dengan sintaks yang sama. 257 00:14:21,030 --> 00:14:24,230 Bagi tinggi, kita mengisytiharkan ia dengan berfungsi dan bukannya tidak sah. 258 00:14:24,230 --> 00:14:26,110 Perhatikan sama ada itu tidak sah atau tidak sah, 259 00:14:26,110 --> 00:14:28,380 ia masih semua fungsi yang sama. 260 00:14:28,380 --> 00:14:32,440 Dan kami hanya tidak meletakkan apa-apa jua dalam kurungan, 261 00:14:32,440 --> 00:14:34,690 dan ia kelihatan sangat seperti kod C. 262 00:14:34,690 --> 00:14:37,460 Dan di bawah, kita boleh memanggilnya di bawah. 263 00:14:37,460 --> 00:14:42,730 >> Jika kita melihat contoh 4b, kita dapati bahawa saya telah mengubah beberapa perkara. 264 00:14:42,730 --> 00:14:45,340 Satu-satunya perkara yang saya telah berubah benar-benar walaupun adalah perintah itu. 265 00:14:45,340 --> 00:14:47,340 Kami mempunyai yang sama fungsi, tetapi kini mereka 266 00:14:47,340 --> 00:14:52,200 diisytiharkan selepas ia digunakan dalam console.log dan tinggi pada baris 18, 19. 267 00:14:52,200 --> 00:14:54,740 Jika anda melakukan ini dalam C, membuat pasti menyebabkan ralat. 268 00:14:54,740 --> 00:14:56,070 Di sini, ini lagi boleh digunakan. 269 00:14:56,070 --> 00:15:01,935 Dan saya boleh menunjukkan ini kepada anda oleh memanggil Nod pada contoh 4b. 270 00:15:01,935 --> 00:15:05,350 271 00:15:05,350 --> 00:15:10,130 >> Satu lagi cara yang kita boleh memanggil fungsi adalah dengan menyimpan berfungsi sebagai pembolehubah. 272 00:15:10,130 --> 00:15:13,790 Seperti yang saya katakan, pembolehubah boleh mempunyai apa-apa jenis. 273 00:15:13,790 --> 00:15:16,720 Salah satu jenis pembolehubah boleh mempunyai adalah suatu fungsi. 274 00:15:16,720 --> 00:15:19,800 Jadi, jika anda melihat penggunaan di contoh 4c, apa yang saya telah berubah 275 00:15:19,800 --> 00:15:24,320 di sini adalah var menambah dan bukannya fungsi tambahan. 276 00:15:24,320 --> 00:15:26,807 Dan kini menambah sama fungsi. 277 00:15:26,807 --> 00:15:28,140 Fungsi ini di sini adalah tanpa nama. 278 00:15:28,140 --> 00:15:33,346 Ia tidak mempunyai nama, maka ia hanya fungsi dan kemudian kurungan. 279 00:15:33,346 --> 00:15:35,220 Syntax selepas itu tidak berubah, tetapi anda 280 00:15:35,220 --> 00:15:38,300 adakah perlu ingat bahawa anda mempunyai satu pemboleh ubah yang anda 281 00:15:38,300 --> 00:15:42,940 menyimpan fungsi ke dalam add, dan pembolehubah yang anda menyimpan ke tinggi. 282 00:15:42,940 --> 00:15:47,620 >> Kerana menambah dan tinggi kini pembolehubah dan tidak fungsi, sesuatu perubahan. 283 00:15:47,620 --> 00:15:50,190 Ini adalah bug biasa saya lihat dalam banyak JavaScripts rakyat, 284 00:15:50,190 --> 00:15:52,410 dan sesuatu yang perlu diingat. 285 00:15:52,410 --> 00:15:54,365 Apabila saya berjalan ini, mari kita lihat apa yang berlaku. 286 00:15:54,365 --> 00:15:57,410 287 00:15:57,410 --> 00:15:58,230 Saya mendapat ralat. 288 00:15:58,230 --> 00:16:01,000 Ia berkata undefined pada ketika ini. 289 00:16:01,000 --> 00:16:03,520 Maka ia berkata ia tidak tahu apa yang menambah adalah. 290 00:16:03,520 --> 00:16:06,010 >> Kerana kini menambah tidak a fungsi, menambah dijadikan pemboleh ubah. 291 00:16:06,010 --> 00:16:10,100 Dan anda tidak benar-benar diberi menambah nilai lagi apabila anda menggunakannya. 292 00:16:10,100 --> 00:16:14,460 Yang membawa kita kepada contoh 4d, di mana jika anda mahu menggunakan pembolehubah sebagai fungsi, 293 00:16:14,460 --> 00:16:17,210 anda hanya perlu untuk memastikan mereka mendapatkan nilai sebelum ia digunakan. 294 00:16:17,210 --> 00:16:20,200 295 00:16:20,200 --> 00:16:23,420 >> Mari kita beralih kepada contoh lima kemudian. 296 00:16:23,420 --> 00:16:27,390 Di sini, kita bercakap mengenai structs dalam C. Pada C, structs 297 00:16:27,390 --> 00:16:30,320 mempunyai struktur tetap ini kepada mereka kerana anda perlu mengisytiharkan mereka 298 00:16:30,320 --> 00:16:33,050 sebelum anda menggunakannya, dan anda mengatakan saya mempunyai seorang pelajar, 299 00:16:33,050 --> 00:16:36,645 dan setiap pelajar mempunyai tepat satu nama, satu tahun, satu jantina. 300 00:16:36,645 --> 00:16:37,770 Ia perlu mempunyai semua daripada mereka. 301 00:16:37,770 --> 00:16:42,280 Ia tidak boleh mempunyai apa-apa nilai lain, dan mereka perlu menjadi jenis tertentu. 302 00:16:42,280 --> 00:16:47,540 >> Kemudian kita boleh memulakan yang struct dalam sintaks ini bagus 303 00:16:47,540 --> 00:16:49,470 kerana ia tahu perintah itu. 304 00:16:49,470 --> 00:16:51,460 Agar mengetahui Roger adalah nama. 305 00:16:51,460 --> 00:16:54,060 Ia tahu bahawa 2016 adalah tahun dan M adalah jantina yang 306 00:16:54,060 --> 00:16:58,200 kerana kita diceritakannya ini senarai ialah pelajar struct. 307 00:16:58,200 --> 00:17:01,607 Dan kemudian anda boleh mencetak ia, mengakses s.name. 308 00:17:01,607 --> 00:17:03,690 Mari kita lihat bagaimana kita akan menukar bahawa untuk JavaScript. 309 00:17:03,690 --> 00:17:06,400 310 00:17:06,400 --> 00:17:09,790 Perhatikan bahawa s kini merupakan berubah-ubah, dan tidak ada jenis. 311 00:17:09,790 --> 00:17:10,920 Ia hanya var satu lagi. 312 00:17:10,920 --> 00:17:14,480 Oleh kerana ia tidak kira jika jenis pembolehubah ini adalah penunjuk, 313 00:17:14,480 --> 00:17:17,440 ia adalah struct, atau apa-apa lagi. 314 00:17:17,440 --> 00:17:19,650 Kami mempunyai sintaks yang sedikit berbeza. 315 00:17:19,650 --> 00:17:21,890 Sintaks ini adalah sintaks objek. 316 00:17:21,890 --> 00:17:24,400 >> Anda mungkin telah melihat ia dalam JSON. 317 00:17:24,400 --> 00:17:27,780 JSON sebenarnya berdiri untuk JavaScript Objek notasi. 318 00:17:27,780 --> 00:17:31,240 Ini adalah bagaimana anda menentukan objek dalam JavaScript. 319 00:17:31,240 --> 00:17:34,500 Kami mempunyai kekunci, yang nilai, seperti nama. 320 00:17:34,500 --> 00:17:37,680 Dan kami memberikan menghargai pada sisi lain dari kolon. 321 00:17:37,680 --> 00:17:41,850 Dan satu hal yang perlu diingat adalah anda tidak perlu untuk mempunyai nama dan setahun 322 00:17:41,850 --> 00:17:42,980 dan jantina untuk objek. 323 00:17:42,980 --> 00:17:44,570 Objek boleh mempunyai nilai-nilai. 324 00:17:44,570 --> 00:17:46,920 Ia boleh mempunyai seberapa banyak yang anda suka. 325 00:17:46,920 --> 00:17:50,375 >> Kita boleh menggunakan objek-objek ini dalam hanya cara yang sama kita akan menggunakan satu struct, s.name. 326 00:17:50,375 --> 00:17:53,810 327 00:17:53,810 --> 00:17:57,080 Kita boleh menjalankan ia benar-benar cepat dengan melakukan nod contoh 5.c. 328 00:17:57,080 --> 00:18:00,320 329 00:18:00,320 --> 00:18:02,520 Kita tidak boleh benar-benar menjalankan fail C dalam Nod. 330 00:18:02,520 --> 00:18:03,654 Ia tidak tahu apa yang C adalah. 331 00:18:03,654 --> 00:18:04,695 Ia hanya tahu JavaScript. 332 00:18:04,695 --> 00:18:09,865 Apabila kita menjalankan ex5.js, kita akan mendapat nilai, yang kami jangkakan. 333 00:18:09,865 --> 00:18:13,490 334 00:18:13,490 --> 00:18:15,980 >> Mari kita beralih kepada contoh enam. 335 00:18:15,980 --> 00:18:18,930 Di sini saya hanya mahu bercakap sedikit sedikit lebih lanjut mengenai JavaScript tatasusunan 336 00:18:18,930 --> 00:18:20,930 kerana mereka sedikit yang berbeza daripada apa yang anda 337 00:18:20,930 --> 00:18:26,940 digunakan dalam C. Tatasusunan adalah notated, tidak dengan kurungan seperti di C, 338 00:18:26,940 --> 00:18:28,640 dengan pendakap kerinting, tetapi kurungan. 339 00:18:28,640 --> 00:18:32,150 Anda boleh mempunyai pelbagai kosong, seperti arr selaras empat. 340 00:18:32,150 --> 00:18:34,680 Anda boleh mempunyai tatasusunan dengan pelbagai nilai. 341 00:18:34,680 --> 00:18:39,790 Dan anda mengaksesnya hanya dengan cara yang sama di C. 342 00:18:39,790 --> 00:18:42,990 >> Sehingga beratur tujuh, segala-galanya seolah-olah cukup mudah. 343 00:18:42,990 --> 00:18:45,390 Satu perbezaan kecil adalah di sini di talian 10. 344 00:18:45,390 --> 00:18:48,620 Cara anda mendapat panjang suatu array hanya dengan memanggil .length. 345 00:18:48,620 --> 00:18:50,620 Pelbagai sebenarnya boleh menjadi dilayan seperti objek, 346 00:18:50,620 --> 00:18:54,960 dan objek ini mempunyai harta panjang anda memanggil untuk mendapatkan panjang itu. 347 00:18:54,960 --> 00:18:57,350 Perhatikan bahawa ini adalah berbeza dalam C kerana dalam C anda 348 00:18:57,350 --> 00:19:01,600 perlu tahu panjang objek anda terlebih dahulu. 349 00:19:01,600 --> 00:19:04,700 >> Jadi satu lagi perkara yang menarik mengenai tatasusunan adalah bahawa anda boleh mempunyai jenis yang berbeza. 350 00:19:04,700 --> 00:19:07,470 Jika anda mempunyai pelbagai dalam C, terdapat adalah tatasusunan nilai tertentu, 351 00:19:07,470 --> 00:19:11,900 sama ada penunjuk struct atau terapung atau [didengar]. 352 00:19:11,900 --> 00:19:13,700 Di sini, anda boleh mempunyai nilai yang berbeza. 353 00:19:13,700 --> 00:19:17,560 Saya pertama mempunyai beberapa titik terapung, maka Boolean, kemudian integer lain. 354 00:19:17,560 --> 00:19:19,670 Dan sebenarnya, mereka boleh menukar jenis juga. 355 00:19:19,670 --> 00:19:21,220 Lihatlah talian 16. 356 00:19:21,220 --> 00:19:26,760 Array dua berubah daripada menjadi nombor, integer, untuk rentetan. 357 00:19:26,760 --> 00:19:30,920 >> Satu lagi perkara yang menarik mengenai tatasusunan di sini di talian 19, mereka mempunyai saiz tak terhingga. 358 00:19:30,920 --> 00:19:35,900 Anda hanya boleh berkata saya mahu seratus yang unsur menjadi tali legit. 359 00:19:35,900 --> 00:19:38,510 Dan ini nampaknya tidak membuat akal kerana array hanya 360 00:19:38,510 --> 00:19:41,080 mempunyai ruang untuk tiga elemen, jadi akhirnya ialah dua. 361 00:19:41,080 --> 00:19:44,800 Tetapi apabila anda melakukan ini, mari kita melihat apa yang pelbagai menjadi tiga. 362 00:19:44,800 --> 00:19:47,460 Kami akan menjalankan ini dengan cepat dengan contoh nod six.js. 363 00:19:47,460 --> 00:19:49,990 364 00:19:49,990 --> 00:19:52,180 Kami mendapatkan ini benar-benar panjang pelbagai, dan apa yang berlaku 365 00:19:52,180 --> 00:19:55,100 adalah kita mempunyai unsur-unsur pertama beberapa dan kemudian sekumpulan kosong 366 00:19:55,100 --> 00:19:56,580 sehingga kita mendapatkan tali kita. 367 00:19:56,580 --> 00:19:58,580 JavaScript mengisi dalam pelbagai kerana ia diperlukan. 368 00:19:58,580 --> 00:20:01,790 369 00:20:01,790 --> 00:20:05,420 >> Mari kita akhirnya pergi ke contoh terakhir kami. 370 00:20:05,420 --> 00:20:08,180 Di sini kita mempunyai senarai yang pelajar yang berbeza. 371 00:20:08,180 --> 00:20:11,350 Saya ingin bercakap sedikit sedikit tentang beberapa aspek yang bagus 372 00:20:11,350 --> 00:20:14,240 daripada untuk gelung dalam JavaScript. 373 00:20:14,240 --> 00:20:17,500 Dalam C, bagi gelung adalah sejenis terhad. 374 00:20:17,500 --> 00:20:21,490 Mereka mempunyai struktur tetap, di mana anda mempunyai pembolehubah, anda mempunyai keadaan, 375 00:20:21,490 --> 00:20:23,850 dan kemudian anda melakukan sesuatu pada akhir gelung. 376 00:20:23,850 --> 00:20:27,560 Dan sudah tentu ini kerja-kerja dalam JavaScript, seperti yang kita lihat dalam contoh sebelumnya. 377 00:20:27,560 --> 00:20:31,030 Tetapi kita juga mempunyai cara yang lebih bagus untuk berbuat demikian dalam JavaScript. 378 00:20:31,030 --> 00:20:33,870 Ini dipanggil gelung foreach. 379 00:20:33,870 --> 00:20:36,580 >> Maaf, mari kita kembali untuk contoh tujuh sini. 380 00:20:36,580 --> 00:20:39,320 Kita juga boleh mengatakan seksyen adalah senarai. 381 00:20:39,320 --> 00:20:43,250 Itu, kurniakanlah daku setiap i atau setiap indeks dalam senarai itu. 382 00:20:43,250 --> 00:20:46,255 Maka kita boleh mendapatkan pelajar dengan hanya memanggil bahagian i. 383 00:20:46,255 --> 00:20:50,690 Jadi semua kod menetapkan i sama dengan sifar dan memastikan i 384 00:20:50,690 --> 00:20:54,420 adalah kurang daripada panjang dan menambah satu hingga i setiap kali, itu 385 00:20:54,420 --> 00:21:00,220 menjaga anda lebih baik dengan gelung foreach ini. 386 00:21:00,220 --> 00:21:02,830 >> Bukan sahaja gelung foreach bekerja dalam senarai atau tatasusunan, 387 00:21:02,830 --> 00:21:06,130 mereka juga bekerja dalam objek, yang juga baik. 388 00:21:06,130 --> 00:21:10,240 Anda boleh mendapatkan nama tiap-tiap harta dengan hanya mengambil 389 00:21:10,240 --> 00:21:15,030 kamus atau objek, seperti pelajar, dan kemudian hanya memberikan saya berkata setiap utama. 390 00:21:15,030 --> 00:21:18,920 Utama A akan ini harta, nama atau rumah. 391 00:21:18,920 --> 00:21:22,870 Jadi apa yang akan berlaku di sini ialah kita mencetak nama pertama dan kemudian 392 00:21:22,870 --> 00:21:24,920 rumah setiap pelajar. 393 00:21:24,920 --> 00:21:29,170 >> Saya dapat berjalan ini dalam Nod benar-benar cepat untuk menunjukkan kepada anda. 394 00:21:29,170 --> 00:21:35,510 Kami mendapatkan pertama gaya C untuk gelung, di mana kita akan mendapat setiap objek yang dicetak. 395 00:21:35,510 --> 00:21:38,910 Dan kemudian kita mempunyai JavaScript gaya, di mana anda boleh hanya 396 00:21:38,910 --> 00:21:41,510 mencetak setiap kunci dan menghargai individu. 397 00:21:41,510 --> 00:21:45,560 398 00:21:45,560 --> 00:21:47,050 >> Baiklah. 399 00:21:47,050 --> 00:21:52,850 Sekarang kita telah dilindungi Node.js, saya rasa kita sudah bersedia untuk bermula dengan Meteor. 400 00:21:52,850 --> 00:21:56,070 Seperti yang saya katakan, Meteor melakukan kerja yang hebat menulis beberapa contoh siap 401 00:21:56,070 --> 00:22:00,600 untuk anda yang anda boleh meneroka melalui tutorial ini atau dalam folder seminar itu. 402 00:22:00,600 --> 00:22:03,750 Tetapi di sini saya ingin bermula lebih dari awal. 403 00:22:03,750 --> 00:22:06,810 >> Mari kita membuat mudah untuk dilakukan permohonan. 404 00:22:06,810 --> 00:22:14,140 Ini adalah jenis asas apa untuk melakukan permohonan saya menunjukkan anda lebih awal adalah. 405 00:22:14,140 --> 00:22:16,990 Dalam tutorial ini, anda akan melihat bahawa ada 406 00:22:16,990 --> 00:22:20,180 Meteor yang membuat arahan untuk membuat projek Meteor baru. 407 00:22:20,180 --> 00:22:24,510 Anda perlu memanggil ini untuk untuk menjalankan projek Meteor kerana ia 408 00:22:24,510 --> 00:22:27,470 akan menjalankan arahan untuk mencipta Meteor 409 00:22:27,470 --> 00:22:31,100 fail yang diperlukan untuk projek anda. 410 00:22:31,100 --> 00:22:35,920 >> Jika anda pergi ke dalam pangkalan, kita boleh pergi ke dalam folder yang dipanggil langkah satu. 411 00:22:35,920 --> 00:22:41,240 Dan satu langkah akan sesuai dengan langkah pertama dalam tutorial. 412 00:22:41,240 --> 00:22:44,020 Notis terdapat folder, langkah satu, dua langkah, sehingga ke lima. 413 00:22:44,020 --> 00:22:47,835 Dan setiap satu adalah bersamaan untuk langkah dalam tutorial ini. 414 00:22:47,835 --> 00:22:50,960 415 00:22:50,960 --> 00:22:52,780 Saya akan membukanya dalam editor teks saya di sini 416 00:22:52,780 --> 00:22:56,280 supaya kita dapat melihat sedikit apa yang telah dicipta. 417 00:22:56,280 --> 00:22:58,530 Kita melihat bahawa ada empat bahagian utama. 418 00:22:58,530 --> 00:23:01,170 Ada direktori Meteor, .meteor. 419 00:23:01,170 --> 00:23:03,180 Dan bahawa anda biasanya tidak perlu menyentuh. 420 00:23:03,180 --> 00:23:05,070 Meteor menjaga folder itu, dan ia hanya 421 00:23:05,070 --> 00:23:08,640 akan memastikan bahawa anda projek akan menimbulkan masalah. 422 00:23:08,640 --> 00:23:14,580 >> Kami juga mempunyai tiga fail, fail HTML, fail JavaScript, dan fail CSS. 423 00:23:14,580 --> 00:23:18,670 Mari kita pertama bermula dengan fail HTML. 424 00:23:18,670 --> 00:23:21,310 Pada pandangan pertama, ini kelihatan seperti dokumen HTML biasa. 425 00:23:21,310 --> 00:23:23,490 Tetapi melihat bahawa ada beberapa perbezaan. 426 00:23:23,490 --> 00:23:26,520 Satu, ini tidak sebenarnya dokumen HTML lengkap. 427 00:23:26,520 --> 00:23:28,640 Kami hilang tag HTML. 428 00:23:28,640 --> 00:23:29,700 Ini perkara biasa. 429 00:23:29,700 --> 00:23:33,560 Dalam Meteor, anda tidak dijangka untuk mewujudkan tag HTML. 430 00:23:33,560 --> 00:23:35,260 Itu dilakukan untuk anda. 431 00:23:35,260 --> 00:23:38,380 Anda ingin begin-- jika anda ingin membuat laman web, 432 00:23:38,380 --> 00:23:40,430 anda hanya perlu untuk memulakan dengan tag kepala, 433 00:23:40,430 --> 00:23:43,510 menentukan bahawa, dan kemudian menentukan tag badan. 434 00:23:43,510 --> 00:23:48,940 >> Tetapi jika anda perhatikan dalam ini Fail HTML, kita mempunyai tag baru. 435 00:23:48,940 --> 00:23:50,350 Kami mempunyai tag template. 436 00:23:50,350 --> 00:23:52,050 Ini bukan HTML biasa. 437 00:23:52,050 --> 00:23:55,300 Ini adalah versi khas HTML Meteor yang menyediakan kepada anda. 438 00:23:55,300 --> 00:23:57,660 Ia dipanggil bar ruang. 439 00:23:57,660 --> 00:24:00,980 Anda boleh menentukan template sedikit modul, jenis seperti fungsi penolong, 440 00:24:00,980 --> 00:24:03,660 dalam C atau kod JavaScript. 441 00:24:03,660 --> 00:24:06,020 Templat ini akan mempunyai nama yang dipanggil tugas. 442 00:24:06,020 --> 00:24:10,520 Dan anda boleh lihat di sini di talian 13 yang boleh anda panggil template ini. 443 00:24:10,520 --> 00:24:14,380 Dan apa Meteor akan lakukan adalah hanya mengisi tugas-tugas ini untuk anda. 444 00:24:14,380 --> 00:24:17,540 445 00:24:17,540 --> 00:24:22,580 >> Satu lagi perkara yang anda mungkin notis adalah sedikit berbeza adalah ini setiap fungsi. 446 00:24:22,580 --> 00:24:26,130 Masing-masing akan mengambil pembolehubah tugas dan jenis melaluinya 447 00:24:26,130 --> 00:24:28,810 dalam gelung yang foreach kita lihat dalam contoh tujuh. 448 00:24:28,810 --> 00:24:34,200 Ini boleh mengambil setiap kamus atau senarai, objek atau senarai, 449 00:24:34,200 --> 00:24:38,820 dan ia hanya akan pergi melalui semua nilai seperti gelung foreach akan. 450 00:24:38,820 --> 00:24:44,110 Oleh itu, jika kita telah mempunyai banyak tugas, ini akan memanggil template pada setiap tugas. 451 00:24:44,110 --> 00:24:49,590 >> Mari kita menjalankan projek Meteor yang hanya untuk melihat bahawa ini berlaku. 452 00:24:49,590 --> 00:24:53,260 Saya menjalankan projek Meteor dengan hanya Meteor Meteor atau berjalan. 453 00:24:53,260 --> 00:24:56,690 Dan kini Meteor hanya perlu untuk cepat menyediakan projek itu, 454 00:24:56,690 --> 00:25:03,320 memulakan pangkalan data yang perlu, dan kemudian post app tempatan. 455 00:25:03,320 --> 00:25:07,200 Kita boleh pergi ke pelayar web kami sekarang. 456 00:25:07,200 --> 00:25:10,215 Dan kita akan melihat bahawa kita mempunyai aplikasi yang sangat mudah. 457 00:25:10,215 --> 00:25:22,190 458 00:25:22,190 --> 00:25:29,130 Jadi apa yang kami perhatikan muncul sebenarnya langkah yang satu, fail langkah satu. 459 00:25:29,130 --> 00:25:33,260 >> Mari kita bergerak ke langkah dua hanya kerana Saya fikir ia akan menjadi tujuan yang sama. 460 00:25:33,260 --> 00:25:36,500 Saya hanya akan mengubah kepada direktori langkah dua 461 00:25:36,500 --> 00:25:39,550 dan menjalankan Meteor lagi supaya kita dapat melihat template kami hanya bekerja dengan. 462 00:25:39,550 --> 00:25:43,560 463 00:25:43,560 --> 00:25:45,730 Ya, satu soalan? 464 00:25:45,730 --> 00:25:49,724 >> PENONTON: Jika kami mendapat kebenaran dinafikan, adalah bahawa- apa yang ia 465 00:25:49,724 --> 00:25:50,390 dipanggil untuk itu? 466 00:25:50,390 --> 00:25:52,154 467 00:25:52,154 --> 00:25:54,070 ROGER ZURAWICKI: Jika anda menjalankan Meteor jangka, 468 00:25:54,070 --> 00:25:57,280 dan anda mempunyai kebenaran dinafikan, sesetengah daripada fail anda 469 00:25:57,280 --> 00:25:59,070 mungkin tidak mempunyai kebenaran set yang betul. 470 00:25:59,070 --> 00:26:03,970 Oleh itu, anda perlu menyemak di mana keizinan adalah off. 471 00:26:03,970 --> 00:26:06,030 Mereka boleh menjadi luar dalam Meteor projek anda, 472 00:26:06,030 --> 00:26:08,550 atau mereka boleh menjadi luar dalam Meteor fail sendiri. 473 00:26:08,550 --> 00:26:13,742 >> PENONTON: Jika saya turun tadi daripada GitHub anda, maka apa yang perlu saya lakukan 474 00:26:13,742 --> 00:26:16,110 [Didengar]? 475 00:26:16,110 --> 00:26:20,110 >> ROGER ZURAWICKI: Jika anda ingin memastikan anda boleh mengaksesnya, 476 00:26:20,110 --> 00:26:21,450 ada arahan anda boleh menjalankan. 477 00:26:21,450 --> 00:26:26,590 Biar saya menulis dengan cepat keluar supaya orang lain boleh melihatnya. 478 00:26:26,590 --> 00:26:30,670 Saya akan membuka tab baru di sini dan pergi ke folder seminar saya. 479 00:26:30,670 --> 00:26:33,500 480 00:26:33,500 --> 00:26:36,490 Chmod adalah arahan untuk menukar kebenaran, 481 00:26:36,490 --> 00:26:40,060 dan anda boleh mengatakan r untuk melakukannya secara rekursif bagi setiap fail. 482 00:26:40,060 --> 00:26:46,040 Dan kebenaran, anda boleh cuba 0755 memastikan anda mempunyai akses penuh, 483 00:26:46,040 --> 00:26:47,820 dan orang lain boleh membaca. 484 00:26:47,820 --> 00:26:50,100 Dan jika anda hanya menjalankan arahan ini, ia akan membuat 485 00:26:50,100 --> 00:26:55,800 memastikan keizinan adalah dalam memeriksa seluruh direktori. 486 00:26:55,800 --> 00:26:59,160 Running ls-l akan menunjukkan anda kebenaran dengan lebih terperinci. 487 00:26:59,160 --> 00:27:01,290 Ini kelihatan OK. 488 00:27:01,290 --> 00:27:03,900 >> Apa yang paling penting adalah bahawa anda mempunyai ketiga-tiga 489 00:27:03,900 --> 00:27:06,610 rwx untuk semua fail dalam direktori seminar. 490 00:27:06,610 --> 00:27:09,415 491 00:27:09,415 --> 00:27:11,330 Adakah yang menyelesaikan masalah ini? 492 00:27:11,330 --> 00:27:13,735 >> PENONTON: Ia mengatakan hilang operan [didengar]. 493 00:27:13,735 --> 00:27:17,980 494 00:27:17,980 --> 00:27:18,740 [Didengar] 495 00:27:18,740 --> 00:27:20,490 ROGER ZURAWICKI: Anda perlu memastikan anda 496 00:27:20,490 --> 00:27:23,022 mempunyai titik pada akhir perintah anda. 497 00:27:23,022 --> 00:27:23,938 PENONTON: [didengar]. 498 00:27:23,938 --> 00:27:36,395 499 00:27:36,395 --> 00:27:37,520 ROGER ZURAWICKI: Baiklah. 500 00:27:37,520 --> 00:27:42,220 Mari kita segera kembali kepada tuan rumah tempatan, aplikasi yang kita ada. 501 00:27:42,220 --> 00:27:46,640 Dan anda akan melihat bahawa kita mempunyai beberapa tugas di sini, seperti yang diharapkan. 502 00:27:46,640 --> 00:27:49,330 503 00:27:49,330 --> 00:27:51,990 Kami mempunyai sekumpulan CSS, yang anda tidak perlu bimbang tentang. 504 00:27:51,990 --> 00:27:53,740 Meteor tutorial hanya memberikan ini untuk anda 505 00:27:53,740 --> 00:27:58,010 untuk membuat anda untuk melakukan senarai lihat sedikit lebih bagus daripada HTML yang jelas nyata. 506 00:27:58,010 --> 00:28:02,290 Dan kita mempunyai fail JavaScript, yang Saya akan pergi ke lebih terperinci sedikit kemudian, 507 00:28:02,290 --> 00:28:04,272 tetapi ia hanya menyediakan tugas-tugas ini. 508 00:28:04,272 --> 00:28:04,980 Ini adalah satu tugas. 509 00:28:04,980 --> 00:28:05,740 Ini adalah tugas dua. 510 00:28:05,740 --> 00:28:06,590 Ini adalah tugas tiga. 511 00:28:06,590 --> 00:28:09,720 Jadi ini adalah data yang di Meteor mendapatkan. 512 00:28:09,720 --> 00:28:15,590 >> Salah satu perkara yang sejuk tentang Meteor adalah bahawa perubahan boleh berlaku secara automatik. 513 00:28:15,590 --> 00:28:18,990 Jika saya mahu menukar menamakan satu tugas pertama, 514 00:28:18,990 --> 00:28:22,490 jadi ia akan berkata ini tidak tugas satu, dan saya menyimpannya, 515 00:28:22,490 --> 00:28:26,370 kemudian apabila saya pergi ke web penyemak imbas, anda boleh menyegarkan ia, 516 00:28:26,370 --> 00:28:30,861 dan ia secara automatik kata ini tidak menegur satu. 517 00:28:30,861 --> 00:28:32,860 Anda boleh melakukan perkara yang sama dalam mana-mana fail-fail ini. 518 00:28:32,860 --> 00:28:37,940 Membuat perubahan, dan bukannya untuk melakukan senarai, saya akan mempunyai ia saya untuk melakukan senarai. 519 00:28:37,940 --> 00:28:40,980 >> Dan satu perkara yang anda hanya perasan, bahawa saya tidak perlu memuat semula. 520 00:28:40,980 --> 00:28:43,960 Idea menyegarkan adalah jenis daripada diselesaikan untuk anda dengan Meteor. 521 00:28:43,960 --> 00:28:48,970 Setiap kali ia mengesan perubahan fail, ia akan memuatkan perubahan untuk anda. 522 00:28:48,970 --> 00:28:53,110 Ini kerja-kerja pada semua fail, sama ada itu HTML, CSS, atau JavaScript. 523 00:28:53,110 --> 00:28:57,990 Untuk menunjukkan kepada anda apa yang aplikasi ini akan melihat seperti tanpa CSS, saya dapat menghapuskannya semua. 524 00:28:57,990 --> 00:29:04,720 Dan apabila ia Reloaded, anda kini mempunyai tidak seperti molek untuk melakukan senarai. 525 00:29:04,720 --> 00:29:06,370 Mari kita meletakkan kandungan yang kembali. 526 00:29:06,370 --> 00:29:11,343 Dan sesungguhnya cukup, ia menyegarkan, dan CSS kami kembali. 527 00:29:11,343 --> 00:29:11,843 Great. 528 00:29:11,843 --> 00:29:15,700 529 00:29:15,700 --> 00:29:20,010 >> Kami kini boleh bergerak dengan tutorial. 530 00:29:20,010 --> 00:29:23,360 Mari kita bercakap tentang langkah dua, template. 531 00:29:23,360 --> 00:29:27,140 Ini adalah apa yang kita hanya melihat dengan tugas yang berbeza. 532 00:29:27,140 --> 00:29:31,550 Meteor akan menerangkan kepada anda apa yang template dan bagaimana logik ini berfungsi. 533 00:29:31,550 --> 00:29:34,760 Tetapi mari kita melihat kod untuk lihat jika kita boleh masuk akal daripada itu. 534 00:29:34,760 --> 00:29:38,030 535 00:29:38,030 --> 00:29:41,460 >> Dalam permohonan yang sangat mudah, seperti apa yang kita ada dalam mudah 536 00:29:41,460 --> 00:29:44,550 lakukan, langkah satu, dua langkah, langkah tiga, empat langkah, langkah lima, 537 00:29:44,550 --> 00:29:45,700 kita tidak mempunyai folder. 538 00:29:45,700 --> 00:29:47,533 Kami tidak mempunyai pelayan folder yang saya nyatakan. 539 00:29:47,533 --> 00:29:50,510 Kami tidak mempunyai pelanggan folder yang telah disebutkan. 540 00:29:50,510 --> 00:29:52,290 Jadi Meteor akan menjalankan semua fail. 541 00:29:52,290 --> 00:29:55,210 Ia akan berjalan baik pada pelanggan, kedua-dua pada pelayan. 542 00:29:55,210 --> 00:29:58,840 >> Dan jika anda ingin bahagian anda JavaScript kod untuk menjalankan hanya pada pelanggan, 543 00:29:58,840 --> 00:30:02,350 mereka perlu memastikan bahawa anda mempunyai jika kenyataan, jenis seperti apa yang 544 00:30:02,350 --> 00:30:04,890 kita ada dalam fail JavaScript kami di sini. 545 00:30:04,890 --> 00:30:08,010 Jadi Meteor, hanya jika itu pelanggan, maka saya 546 00:30:08,010 --> 00:30:12,355 mahu menentukan templat penolong dipanggil tugas. 547 00:30:12,355 --> 00:30:15,050 548 00:30:15,050 --> 00:30:19,260 Apa kod ini benar-benar Adakah ia mengatakan ada 549 00:30:19,260 --> 00:30:21,800 templat objek dipanggil Meteor yang menyediakan. 550 00:30:21,800 --> 00:30:23,270 Dan kami akan menambah penolong. 551 00:30:23,270 --> 00:30:27,680 Pembantu adalah tugas-tugas ini, perkara-perkara seperti tugas-tugas. 552 00:30:27,680 --> 00:30:33,890 >> Anda akan melihat bahawa jika kita kembali kepada Fail HTML, kita dipanggil setiap pada tugas. 553 00:30:33,890 --> 00:30:35,750 Tugas tidak ditakrifkan dalam HTML. 554 00:30:35,750 --> 00:30:37,770 Ia ditakrifkan dalam JavaScript. 555 00:30:37,770 --> 00:30:42,610 Dan Meteor perlu tahu apa tugas adalah apabila kita pergi ke dalam JavaScript sini. 556 00:30:42,610 --> 00:30:45,550 Tugas adalah penolong ini. 557 00:30:45,550 --> 00:30:49,830 Penolong, yang boleh anda fikirkan sebagai pembolehubah template. 558 00:30:49,830 --> 00:30:51,000 Dan apakah tugas lakukan? 559 00:30:51,000 --> 00:30:53,580 Nah, ia mengembalikan senarai nilai. 560 00:30:53,580 --> 00:30:56,750 Kerana itu senarai, kita boleh memanggil setiap di dalamnya. 561 00:30:56,750 --> 00:30:58,590 Jadi itulah sebabnya kita panggil setiap pada tugas. 562 00:30:58,590 --> 00:30:59,730 Dan sekarang kita mempunyai tugas. 563 00:30:59,730 --> 00:31:02,850 564 00:31:02,850 --> 00:31:03,990 >> Apakah tugas lakukan? 565 00:31:03,990 --> 00:31:07,740 Nah, ia mempunyai anak panah ini di sini selepas pendakap kerinting. 566 00:31:07,740 --> 00:31:09,130 Ini bermakna tugas adalah templat. 567 00:31:09,130 --> 00:31:11,100 Ia bukan penolong, seperti apa yang kita hanya melihat. 568 00:31:11,100 --> 00:31:12,872 Ia adalah satu template kami telah ditakrifkan. 569 00:31:12,872 --> 00:31:14,080 Dan di mana kita telah ditakrifkan ia? 570 00:31:14,080 --> 00:31:16,950 Kami telah ditakrifkan di bawah ia di sini. 571 00:31:16,950 --> 00:31:21,160 >> Semua template ini adalah tidak menyebabkan item senarai, dan ia memerlukan teks. 572 00:31:21,160 --> 00:31:24,160 Sekarang, teks seolah-olah menjadi satu penolong, tapi saya akan tunjukkan anda 573 00:31:24,160 --> 00:31:26,610 bahawa ini adalah benar-benar masih ahli data tugas. 574 00:31:26,610 --> 00:31:29,230 575 00:31:29,230 --> 00:31:33,670 Apabila anda memanggil setiap, ia pergi ke struktur data yang sedikit. 576 00:31:33,670 --> 00:31:39,130 Seperti gelung foreach, ia kini hanya kelihatan pada elemen yang pertama dalam objek kami. 577 00:31:39,130 --> 00:31:41,850 Kami melihat teks yang ditakrifkan di sini dalam objek kami. 578 00:31:41,850 --> 00:31:45,350 Jadi Meteor adalah bijak untuk mengetahui bahawa kita berbicara tentang teks ini, 579 00:31:45,350 --> 00:31:47,630 tidak penolong yang dipanggil teks. 580 00:31:47,630 --> 00:31:52,120 Ia hanya mendapat nilai ini teks di sini dan memaparkan sebagai HTML, 581 00:31:52,120 --> 00:31:55,475 dan itulah bagaimana data yang pergi dari JavaScript untuk HTML. 582 00:31:55,475 --> 00:32:03,320 583 00:32:03,320 --> 00:32:07,030 >> Beralih walaupun, dalam contoh ini kita keras berkod nilai-nilai. 584 00:32:07,030 --> 00:32:10,440 Meteor melakukan dua benar-benar perkara yang baik untuk kita. 585 00:32:10,440 --> 00:32:15,050 Selain muat semula hidup yang kita menunjukkan, ia juga menguruskan pangkalan data kami. 586 00:32:15,050 --> 00:32:18,750 Jika anda terpaksa bekerja dengan PHP, anda perlu mengkonfigurasi phpMyAdmin. 587 00:32:18,750 --> 00:32:21,320 Anda perlu memastikan anda jadual semua di dalam semakan. 588 00:32:21,320 --> 00:32:24,760 Anda terpaksa melakukan banyak kerja untuk membuat memastikan data anda telah diformat dengan betul, 589 00:32:24,760 --> 00:32:27,880 PHP dan boleh berkomunikasi dengannya. 590 00:32:27,880 --> 00:32:30,170 >> Sekarang, Meteor menggunakan paradigma baru. 591 00:32:30,170 --> 00:32:32,310 Ini adalah cara yang lebih moden mengendalikan pangkalan data. 592 00:32:32,310 --> 00:32:34,580 Ia adalah teknologi yang dipanggil MongoDB. 593 00:32:34,580 --> 00:32:38,740 Sama seperti dalam JavaScript, kita melihat bahawa ia tidak kira apa jenis data mempunyai. 594 00:32:38,740 --> 00:32:39,640 Semuanya var a. 595 00:32:39,640 --> 00:32:40,570 Ia tidak charstar satu. 596 00:32:40,570 --> 00:32:40,930 Ia tidak int. 597 00:32:40,930 --> 00:32:41,970 Ia bukan satu struct. 598 00:32:41,970 --> 00:32:44,210 Ia hanya var ini, var itu. 599 00:32:44,210 --> 00:32:46,320 >> MongoDB kerja-kerja jenis cara yang sama. 600 00:32:46,320 --> 00:32:48,160 Anda tidak perlu menentukan jadual anda. 601 00:32:48,160 --> 00:32:50,860 Anda tidak perlu untuk mengatakan meja mempunyai nama, yang mempunyai int. 602 00:32:50,860 --> 00:32:54,710 Ia mempunyai, saya tidak tahu, dolar, yang merupakan satu perpuluhan. 603 00:32:54,710 --> 00:32:58,360 Ia hanya JavaScript objek ini, semua VAR ini, pada dasarnya. 604 00:32:58,360 --> 00:33:02,780 Dan ini adalah benar-benar kuat cara untuk prototaip aplikasi anda. 605 00:33:02,780 --> 00:33:06,190 Dan itulah sebabnya Meteor mengambil kesempatan daripada ini. 606 00:33:06,190 --> 00:33:11,080 >> Jika kita pergi ke langkah tiga, mari kita lihat apa yang telah berubah. 607 00:33:11,080 --> 00:33:15,480 Jika kita melihat todos HTML, tidak banyak. 608 00:33:15,480 --> 00:33:17,170 CSS tidak pernah berubah sama sekali. 609 00:33:17,170 --> 00:33:22,420 Tetapi perubahan kecil yang kita lihat dalam HTML adalah kita telah mengubah bagaimana tugas ditakrifkan. 610 00:33:22,420 --> 00:33:23,800 Tugas kini fungsi. 611 00:33:23,800 --> 00:33:25,800 Ini bermakna bahawa setiap kali kita ingin mendapatkan tugas, 612 00:33:25,800 --> 00:33:27,480 kita akan menjalankan fungsi ini. 613 00:33:27,480 --> 00:33:29,230 Ia tidak mengembalikan fungsi sebagai satu nilai. 614 00:33:29,230 --> 00:33:33,710 >> Meteor adalah bijak untuk benar-benar menjalankan fungsi untuk melihat apa yang kita keluar. 615 00:33:33,710 --> 00:33:36,650 Dan ia mengembalikan perkara ini dipanggil tugas. 616 00:33:36,650 --> 00:33:40,650 Kami telah ditakrifkan tugas pada satu baris, dan ia adalah satu koleksi Mongo. 617 00:33:40,650 --> 00:33:43,170 Mongo merujuk kepada pangkalan data Meteor menggunakan, 618 00:33:43,170 --> 00:33:48,420 dan ini baru hanya bermakna kita beri koleksi baru, memanggilnya tugas. 619 00:33:48,420 --> 00:33:53,540 Dalam MySQL, ini akan bersamaan dengan mencari tugas meja dipanggil. 620 00:33:53,540 --> 00:33:56,350 Mongo mempunyai koleksi, tidak jadual. 621 00:33:56,350 --> 00:34:00,100 Jadi ini hanya kelihatan untuk tugas-tugas. 622 00:34:00,100 --> 00:34:04,820 >> Sekarang, dalam template kami penolong dalam template, semua 623 00:34:04,820 --> 00:34:08,380 kita perlu lakukan untuk mendapatkan semua tugas adalah fungsi ini, mencari 624 00:34:08,380 --> 00:34:11,710 dan dakap kosong ini. 625 00:34:11,710 --> 00:34:14,150 Ini adalah lebih khusus kepada Mongo sintaks. 626 00:34:14,150 --> 00:34:16,159 Terdapat banyak dokumentasi dalam talian untuk bagaimana 627 00:34:16,159 --> 00:34:19,360 anda boleh membuat cekap dan benar-benar berguna Mongo pertanyaan. 628 00:34:19,360 --> 00:34:25,560 Tetapi sesuatu seperti ini adalah baik cukup untuk hanya mencari semua data. 629 00:34:25,560 --> 00:34:30,100 >> Kini, salah satu isu yang mungkin anda lihat adalah bahawa kita tidak benar-benar menambah data. 630 00:34:30,100 --> 00:34:35,020 Jadi apa yang berlaku apabila kita sebenarnya menjalankan langkah tiga? 631 00:34:35,020 --> 00:34:37,550 Mari kita cepat pergi ke melangkah tiga dan menjalankan Meteor. 632 00:34:37,550 --> 00:34:42,870 633 00:34:42,870 --> 00:34:45,650 Perhatikan bahawa saya mempunyai satu lagi Meteor projek berjalan di tempat lain, 634 00:34:45,650 --> 00:34:49,110 jadi Meteor tidak suka itu. 635 00:34:49,110 --> 00:34:52,810 Saya hanya akan dekat dengan cepat Meteor lain dengan Kawalan C, 636 00:34:52,810 --> 00:34:55,780 pergi ke langkah tiga, dan menjalankan Meteor lagi. 637 00:34:55,780 --> 00:35:01,070 638 00:35:01,070 --> 00:35:03,180 Perhatikan ia bermula MongoDB kerana MongoDB 639 00:35:03,180 --> 00:35:06,370 adalah sebahagian daripada setiap projek Meteor. 640 00:35:06,370 --> 00:35:09,190 >> Jadi ia mengatakan permohonan saya mempunyai kesilapan. 641 00:35:09,190 --> 00:35:10,590 Itu adalah ciri yang bagus Meteor mempunyai. 642 00:35:10,590 --> 00:35:13,700 Ia akan memastikan anda HTML adalah juga disahkan. 643 00:35:13,700 --> 00:35:17,710 Mari kita cepat melihat mengapa ini berlaku. 644 00:35:17,710 --> 00:35:26,110 Ia seolah-olah saya tidak sengaja disalin kod HTML yang salah. 645 00:35:26,110 --> 00:35:30,610 Jika saya menyimpan sekarang, Meteor dimulakan semula secara automatik pelayan, 646 00:35:30,610 --> 00:35:34,650 dan kini aplikasi sedang berjalan seperti yang diharapkan. 647 00:35:34,650 --> 00:35:39,220 Perhatikan untuk menetapkan ini, anda hanya boleh menjalankan fail HTML yang sama daripada dua langkah, 648 00:35:39,220 --> 00:35:40,380 menyalinnya ke dalam tiga langkah. 649 00:35:40,380 --> 00:35:43,290 650 00:35:43,290 --> 00:35:45,917 >> Kita boleh kembali kepada tuan rumah tempatan kami. 651 00:35:45,917 --> 00:35:47,500 Dan kini kita melihat kita mempunyai untuk melakukan senarai. 652 00:35:47,500 --> 00:35:50,070 Great, tetapi ia kosong. 653 00:35:50,070 --> 00:35:54,210 Kami sebenarnya tidak mempunyai apa-apa tugas dalam pangkalan data Mongo kami. 654 00:35:54,210 --> 00:35:57,930 Jadi mari kita bercakap tentang beberapa cara yang boleh kita lakukan itu. 655 00:35:57,930 --> 00:36:03,240 Jika kita kembali ke terminal, kami boleh menutupnya dan menjalankan Meteor Mongo. 656 00:36:03,240 --> 00:36:05,320 >> Jika anda biasa bagaimana dengan Meteor bekerja, 657 00:36:05,320 --> 00:36:14,100 ini sebenarnya memberikan akses anda untuk MongoDB penuh bagi Meteor. 658 00:36:14,100 --> 00:36:17,570 Perhatikan bahawa anda perlu berjalan Meteor pertama untuk ini untuk bekerja. 659 00:36:17,570 --> 00:36:23,840 Jadi sekiranya saya ini dalam tab baru, saya boleh kembali ke dalam direktori yang sama. 660 00:36:23,840 --> 00:36:29,040 661 00:36:29,040 --> 00:36:32,570 Dan kini Meteor lagi boleh digunakan. 662 00:36:32,570 --> 00:36:33,600 Ini adalah yang segera. 663 00:36:33,600 --> 00:36:36,350 664 00:36:36,350 --> 00:36:38,790 Biar saya sedikit lebih besar supaya kita boleh lihat. 665 00:36:38,790 --> 00:36:41,550 Ini kelihatan sedikit berbeza daripada apa yang boleh digunakan untuk anda 666 00:36:41,550 --> 00:36:42,869 tidak benar-benar perlu menggunakan Mongo. 667 00:36:42,869 --> 00:36:45,410 Inti dari saya di sini adalah supaya anda boleh menggunakan JavaScript. 668 00:36:45,410 --> 00:36:48,250 Tetapi jika anda ingin tahu, API Mongo yang tidak 669 00:36:48,250 --> 00:36:50,730 menggunakan SQL, Bahasa Pertanyaan Berstruktur. 670 00:36:50,730 --> 00:36:55,570 Ia menggunakan bahasa sendiri yang kelihatan banyak seperti JavaScript. 671 00:36:55,570 --> 00:37:00,520 Sangat cepat, kita boleh mencari jadual melalui db.tasks. 672 00:37:00,520 --> 00:37:08,940 Dan ia memberitahu saya ternyata jika kita berjalan mencari, 673 00:37:08,940 --> 00:37:13,450 jenis yang sama dengan apa yang kita ada dengan Meteor, kita boleh memuatkan semua unsur-unsur. 674 00:37:13,450 --> 00:37:17,330 Masalahnya ialah, kita tidak sebenarnya mempunyai tugas-tugas yang ditetapkan. 675 00:37:17,330 --> 00:37:20,600 Oleh itu, ia tidak boleh mendapatkan mereka. 676 00:37:20,600 --> 00:37:22,130 >> Kami boleh memasukkan, walaupun. 677 00:37:22,130 --> 00:37:25,170 Jadi kita boleh menjalankan insert dengan memasukkan arahan. 678 00:37:25,170 --> 00:37:29,140 Dan kita hanya memberikan objek, dan kita hanya 679 00:37:29,140 --> 00:37:31,840 memastikan format yang adalah apa yang kita harapkan. 680 00:37:31,840 --> 00:37:35,030 Jika kita melihat dua langkah, kita melihat bahawa setiap tugas 681 00:37:35,030 --> 00:37:39,590 adalah satu objek dengan teks sebagai utama dan apa sahaja 682 00:37:39,590 --> 00:37:41,640 anda perkara yang perlu dilakukan adalah sebagai pembolehubah. 683 00:37:41,640 --> 00:37:44,680 Oleh itu, kita boleh melakukan sesuatu di sini. 684 00:37:44,680 --> 00:37:50,160 >> Kita boleh mempunyai ia memasukkan tugasan memanggil saya datang dari Mongo. 685 00:37:50,160 --> 00:37:52,570 Dan kita tekan Enter, dan ia berjalan. 686 00:37:52,570 --> 00:37:56,900 Kita boleh berjalan mencari lagi, dan kami melihat bahawa terdapat objek di sini. 687 00:37:56,900 --> 00:38:01,810 Mongo menyerahkan ia ID, yang anda tidak benar-benar perlu bimbang tentang. 688 00:38:01,810 --> 00:38:06,690 Apa yang penting bagi anda adalah data yang anda masukkan ke dalam, adalah data yang anda keluar. 689 00:38:06,690 --> 00:38:10,500 >> Mari kita kembali ke laman web kami, dan hey, tugas kita dimuatkan. 690 00:38:10,500 --> 00:38:13,987 Dan anda dapat melihat bahawa kerana Meteor adalah sangat pintar 691 00:38:13,987 --> 00:38:16,570 dan sentiasa menyegarkan untuk anda, saya tidak perlu menyentuh halaman. 692 00:38:16,570 --> 00:38:19,160 Ia secara automatik dimuatkan. 693 00:38:19,160 --> 00:38:23,520 >> Mari kita menjalankan beberapa kod dalam JavaScript walaupun untuk melakukan ini. 694 00:38:23,520 --> 00:38:26,120 Seperti kita mempunyai Nod di belakang berakhir untuk melaksanakan keluar JavaScript, 695 00:38:26,120 --> 00:38:29,280 kita juga boleh menjalankan JavaScript secara langsung dalam pelayar kami. 696 00:38:29,280 --> 00:38:31,970 Anda boleh melakukan ini dengan ciri-ciri yang dipanggil Periksa Element. 697 00:38:31,970 --> 00:38:34,210 Jika saya klik kanan pada seksyen halaman, 698 00:38:34,210 --> 00:38:36,730 ada pilihan dipanggil Periksa Element. 699 00:38:36,730 --> 00:38:38,840 Jika anda menjalankan pelayar seperti Safari, anda 700 00:38:38,840 --> 00:38:45,430 mungkin perlu untuk membolehkan pemaju anda alat sebelum anda mendapatkan ciri ini. 701 00:38:45,430 --> 00:38:46,930 >> Apa yang kita mengambil berat tentang adalah konsol. 702 00:38:46,930 --> 00:38:48,930 Oleh itu, kita hanya akan pergi ke konsol di bahagian bawah. 703 00:38:48,930 --> 00:38:52,110 704 00:38:52,110 --> 00:38:55,970 Sekarang kita boleh menjalankan apa-apa JavaScript di sini, seperti JavaScript 705 00:38:55,970 --> 00:38:58,860 Saya menunjukkan fail dalam contoh di js. 706 00:38:58,860 --> 00:39:02,040 Tetapi sekarang mari kita lihat tugas. 707 00:39:02,040 --> 00:39:04,955 Kita boleh jalankan arahan kami. 708 00:39:04,955 --> 00:39:07,830 Dan mudah-mudahan saya akan dapat membuat ia sedikit lebih besar supaya kita boleh melihat semua. 709 00:39:07,830 --> 00:39:14,390 710 00:39:14,390 --> 00:39:18,450 >> Jika kita berjalan tasks.find, dan anda akan melihat bahawa ini adalah kod yang sama tepat 711 00:39:18,450 --> 00:39:24,840 yang digunakan oleh fail JavaScript dalam langkah tiga, task.find ini. 712 00:39:24,840 --> 00:39:29,100 Kita boleh menjalankan perkara yang sama, dan sekarang kita mendapatkan beberapa barangan pelik. 713 00:39:29,100 --> 00:39:31,050 Bagaimana kita benar-benar mendapatkan data? 714 00:39:31,050 --> 00:39:34,860 Baik, kami perlu menjalankan ini arahan dipanggil mengambil. 715 00:39:34,860 --> 00:39:37,150 >> Ini amat berguna untuk debugging. 716 00:39:37,150 --> 00:39:41,000 Apa yang anda dapat di sini adalah kursor, dan ini adalah 717 00:39:41,000 --> 00:39:44,890 cara yang baik Meteor mempunyai data semasa mengambil dioptimumkan. 718 00:39:44,890 --> 00:39:48,270 Kursor ini mempunyai semua ciri-ciri untuk pengemaskinian secara langsung dan memuat semula halaman 719 00:39:48,270 --> 00:39:49,650 apabila sesuatu yang telah berubah. 720 00:39:49,650 --> 00:39:51,280 Tetapi ia tidak akan membawa kita data. 721 00:39:51,280 --> 00:39:52,720 Kita boleh mendapatkan data melalui mengambil. 722 00:39:52,720 --> 00:39:56,880 Dan kamu melihat kita mempunyai objek, dan ia seperti apa yang kita mempunyai dalam Mongo, 723 00:39:56,880 --> 00:40:00,040 dengan ID dan teks yang kita masukkan ke dalam. 724 00:40:00,040 --> 00:40:04,200 >> Jadi bagaimana kita memasukkan item dalam Meteor? 725 00:40:04,200 --> 00:40:07,250 Baik, kami hanya mempunyai tugas. 726 00:40:07,250 --> 00:40:09,990 Dan kemudian kita boleh menjalankan arahan insert sama, 727 00:40:09,990 --> 00:40:17,520 memberi kamus atau objek yang dengan format yang sama, teks 728 00:40:17,520 --> 00:40:22,340 dan kemudian saya datang dari konsol. 729 00:40:22,340 --> 00:40:27,240 Sila lihat di atas kerana apabila saya melakukan ini, ia memperlihatkannya dengan jelas di laman web 730 00:40:27,240 --> 00:40:29,660 secara automatik. 731 00:40:29,660 --> 00:40:33,291 >> Perhatikan bahawa anda boleh meletakkan apa-apa anda mahu dalam barang-barang ini. 732 00:40:33,291 --> 00:40:35,040 Ia tidak perlu mempunyai struktur yang tetap. 733 00:40:35,040 --> 00:40:39,790 Saya boleh mempunyai yang sama dengan nombor tiga dan b sama dengan palsu. 734 00:40:39,790 --> 00:40:41,600 Dan ia semua kerja-kerja. 735 00:40:41,600 --> 00:40:46,000 Saya juga boleh memilih untuk tidak termasuk teks sama sekali. 736 00:40:46,000 --> 00:40:48,320 Ini hanya tidak digalakkan walaupun kerana kemudian Meteor 737 00:40:48,320 --> 00:40:50,920 tidak akan tahu apa yang dipaparkan. 738 00:40:50,920 --> 00:40:53,110 Tetapi dalam setiap kes, kita mendapatkan ID, dan itulah 739 00:40:53,110 --> 00:40:54,785 ID objek yang anda boleh menggunakan. 740 00:40:54,785 --> 00:41:01,120 741 00:41:01,120 --> 00:41:03,280 >> Seperti yang kita terus dengan langkah empat dan lima langkah, 742 00:41:03,280 --> 00:41:06,870 tutorial yang akan menunjukkan kepada anda cara-cara yang anda boleh membuat elemen UI menggunakan 743 00:41:06,870 --> 00:41:13,130 HTML yang anda tahu untuk membuat tugas yang berbeza. 744 00:41:13,130 --> 00:41:15,440 Mari kita lihat langkah empat benar-benar cepat. 745 00:41:15,440 --> 00:41:18,290 Kita akan melihat bahawa kami menambah satu seksyen mengenai peristiwa-peristiwa. 746 00:41:18,290 --> 00:41:20,874 Template boleh mempunyai pembantu, yang membawa kita data. 747 00:41:20,874 --> 00:41:22,040 Tetapi ia juga boleh menghubungi acara. 748 00:41:22,040 --> 00:41:25,300 Dan ini adalah di mana barangan menjadi berguna, kerana peristiwa 749 00:41:25,300 --> 00:41:28,590 adalah apa yang berlaku apabila anda klik pada perkara yang berbeza di laman web anda. 750 00:41:28,590 --> 00:41:33,790 >> Di sini, kami adalah kod memberitahu kami menghantar maklumat acara ini. 751 00:41:33,790 --> 00:41:38,860 Tambah apabila anda telah dihantar sesuatu dengan tugas kelas baru. 752 00:41:38,860 --> 00:41:41,910 Apa yang anda perlu di sini adalah pemilih CSS. 753 00:41:41,910 --> 00:41:45,870 Jadi ini hanya kelihatan untuk HTML unsur yang mempunyai tugas kelas baru. 754 00:41:45,870 --> 00:41:47,940 Dan ia kelihatan untuk acara tersebut, seperti selamat. 755 00:41:47,940 --> 00:41:51,050 Peristiwa lain termasuk klik, hover, klik dua kali, 756 00:41:51,050 --> 00:41:54,450 sama dengan apa yang anda dapat dalam HTML biasa. 757 00:41:54,450 --> 00:41:56,770 >> Apa yang anda memberikan di sini kini fungsi. 758 00:41:56,770 --> 00:42:01,210 Dan anda boleh mempunyai anda kod dalam fungsi itu. 759 00:42:01,210 --> 00:42:06,360 Fungsi ini adalah apa yang akhirnya mendapat dipanggil apabila anda menyerahkan tugas baru ini. 760 00:42:06,360 --> 00:42:12,170 Mari kita lihat HTML hanya jadi kami memahami apa tugas baru ini. 761 00:42:12,170 --> 00:42:15,570 Kami telah menambah borang di sini dengan kelas tugas baru. 762 00:42:15,570 --> 00:42:19,880 Dan ia mempunyai input yang mengambil teks. 763 00:42:19,880 --> 00:42:22,605 Dan ini adalah di mana kita akan menambah tugas baru kami. 764 00:42:22,605 --> 00:42:25,520 765 00:42:25,520 --> 00:42:29,780 >> Mari kita berjalan empat langkah dalam laman web untuk melihat apa yang ia kelihatan seperti. 766 00:42:29,780 --> 00:42:32,710 Kita boleh berhenti dahulu daripada MongoDB kami 767 00:42:32,710 --> 00:42:35,300 dari sebelumnya kami contoh dengan Kawalan C. 768 00:42:35,300 --> 00:42:37,690 Dan mari kita mengubahnya menjadi langkah empat direktori. 769 00:42:37,690 --> 00:42:41,000 770 00:42:41,000 --> 00:42:42,920 Kami akan berjalan Meteor lagi untuk memulakan pelayan. 771 00:42:42,920 --> 00:42:46,850 772 00:42:46,850 --> 00:42:50,510 Dan malangnya, saya mempunyai Meteor berjalan di terminal lain. 773 00:42:50,510 --> 00:42:53,080 Jadi, saya hanya akan memastikan ini ditutup. 774 00:42:53,080 --> 00:43:01,805 Mari kita berhenti ini dan perubahan untuk bahagian empat, empat langkah. 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 >> Sekarang kod Meteor kami sedang berjalan. 778 00:43:13,250 --> 00:43:19,480 Dan anda boleh melihat bahawa ia dikemaskini, tanpa walaupun kita mempunyai untuk memuat semula halaman. 779 00:43:19,480 --> 00:43:24,410 Apa yang telah berubah di sini kini bahawa kita tidak mempunyai apa-apa tugas, 780 00:43:24,410 --> 00:43:29,530 tetapi kami mempunyai bentuk yang di sini, ini kotak teks, untuk menambah tugas baru kami. 781 00:43:29,530 --> 00:43:31,550 Dan kita boleh menaip tugas kami di sini. 782 00:43:31,550 --> 00:43:34,564 Saya datang dari halaman HTML. 783 00:43:34,564 --> 00:43:36,105 Apabila saya menekan Enter, ia tidak perlu lagi dikemukakan. 784 00:43:36,105 --> 00:43:39,180 785 00:43:39,180 --> 00:43:44,540 >> Kita boleh melihat apa yang berlaku sebagai ditakrifkan oleh kod JavaScript. 786 00:43:44,540 --> 00:43:49,930 Apa fungsi ini lakukan ialah mengambil teks dari bentuk, 787 00:43:49,930 --> 00:43:53,680 dan kemudian hanya dipanggil tasks.insert, seperti yang kami lakukan pada konsol. 788 00:43:53,680 --> 00:43:56,410 Mereka juga telah memilih untuk menambah tarikh createdAt. 789 00:43:56,410 --> 00:43:59,840 Ini adalah bagaimana anda akan menentukan masa semasa. 790 00:43:59,840 --> 00:44:03,220 Selepas itu, ia hilang bentuk dengan membuat memastikan nilai adalah rentetan kosong. 791 00:44:03,220 --> 00:44:06,550 >> Dan kemudian ia kembali panggilan palsu kepada membuat apa-apa pasti lain yang berlaku. 792 00:44:06,550 --> 00:44:10,350 Apabila anda kembali palsu dari Sekiranya bentuk, yang menghentikan pelaksanaan. 793 00:44:10,350 --> 00:44:14,520 Katakanlah bentuk yang mempunyai tindakan, seperti akur kepada halaman PHP. 794 00:44:14,520 --> 00:44:16,980 Jika anda telah tidak dikembalikan palsu, anda akan kembali benar. 795 00:44:16,980 --> 00:44:18,500 Ia akan berakhir membuat permintaan itu. 796 00:44:18,500 --> 00:44:20,590 Memintas palsu itu dan ia berhenti di sana. 797 00:44:20,590 --> 00:44:23,510 798 00:44:23,510 --> 00:44:28,610 >> Jadi yang merupakan demo sedikit tentang Meteor bagaimana kerja-kerja, dan kita telah 799 00:44:28,610 --> 00:44:30,980 telah mengikuti tutorial untuk seketika. 800 00:44:30,980 --> 00:44:33,560 Dan anda boleh sila bebas untuk terus melakukan perkara ini. 801 00:44:33,560 --> 00:44:37,760 Terdapat banyak sumber, dan tutorial yang sebenarnya hanya 802 00:44:37,760 --> 00:44:40,400 sangat baik mengenai menerangkan apa yang sedang berlaku. 803 00:44:40,400 --> 00:44:44,362 Saya ingin menunjukkan kepada anda sekarang, dalam beberapa minit kita tidak buat, 804 00:44:44,362 --> 00:44:46,320 apakah sebahagian daripada ciri sejuk Meteor, 805 00:44:46,320 --> 00:44:48,772 dan apakah sebahagian daripada pakej yang lebih berguna. 806 00:44:48,772 --> 00:44:51,730 Salah satu perkara yang menarik mengenai Meteor adalah bahawa anda mempunyai sistem pakej. 807 00:44:51,730 --> 00:44:55,620 Anda boleh dengan mudah menggabungkan kod yang beribu-ribu pemaju 808 00:44:55,620 --> 00:44:58,840 telah menulis di seluruh dunia ke dalam projek Meteor anda. 809 00:44:58,840 --> 00:45:02,410 Satu contoh ini adalah apa yang anda mungkin lakukan dalam langkah sembilan tutorial, di mana 810 00:45:02,410 --> 00:45:07,435 anda cuba untuk menambah akaun-akaun untuk projek Meteor anda. 811 00:45:07,435 --> 00:45:10,010 812 00:45:10,010 --> 00:45:13,690 Jika kita mempunyai CS50 PHP projek, kita akan mempunyai 813 00:45:13,690 --> 00:45:17,810 bergantung kepada rangka kerja atau kod kita sendiri untuk membuat 814 00:45:17,810 --> 00:45:20,820 memastikan kita selamat mengendalikan kata laluan dan nama pengguna 815 00:45:20,820 --> 00:45:23,120 dan menyimpan pangkalan data dan semua itu. 816 00:45:23,120 --> 00:45:25,670 >> Ia ternyata Meteor mempunyai beberapa pakej untuk melakukannya untuk anda, 817 00:45:25,670 --> 00:45:29,160 dan untuk melakukannya dengan mudah. 818 00:45:29,160 --> 00:45:31,950 Apa yang kita boleh lakukan adalah menambah beberapa pakej. 819 00:45:31,950 --> 00:45:37,450 Jadi mari kita buat betul yang kini di konsol kami. 820 00:45:37,450 --> 00:45:42,460 Saya akan berhenti projek dan sekarang pergi ke mudah-todos. 821 00:45:42,460 --> 00:45:47,450 822 00:45:47,450 --> 00:45:50,050 Sekarang, mudah-todos adalah projek yang anda 823 00:45:50,050 --> 00:45:53,500 perlu dilakukan selepas dengan langkah 11 atau 12 langkah, 824 00:45:53,500 --> 00:45:55,250 pada akhir tutorial ini. 825 00:45:55,250 --> 00:45:58,642 Dan mari kita cepat melihat ia untuk melihat apakah ciri-ciri yang berbeza yang kita ada. 826 00:45:58,642 --> 00:46:01,610 Mari kita memastikan ia berjalan. 827 00:46:01,610 --> 00:46:04,400 Kadang-kadang ia mengambil masa yang lama untuk menyegarkan, tetapi di sini ia adalah. 828 00:46:04,400 --> 00:46:09,710 >> Kami mempunyai pilihan untuk menyembunyikan tugas-tugas yang lengkap, dan kita boleh log masuk. 829 00:46:09,710 --> 00:46:11,770 Dan ini telah dilakukan dengan pakej Meteor. 830 00:46:11,770 --> 00:46:12,270 Ia hebat. 831 00:46:12,270 --> 00:46:14,910 Kami kini telah username dan tanda kata laluan dalam. 832 00:46:14,910 --> 00:46:19,170 Tetapi bagaimana jika kita mahu menambah satu lagi jenis mekanisme login? 833 00:46:19,170 --> 00:46:22,560 Katakan saya mahu log masuk dengan akaun Meteor saya. 834 00:46:22,560 --> 00:46:27,270 Saya akan berjalan meteor add, dan ini adalah sintaks untuk menambah pakej. 835 00:46:27,270 --> 00:46:32,160 Boleh saya katakan akaun, dan accounts.meteor. 836 00:46:32,160 --> 00:46:35,720 Ia akan menemui kini pakej dan beban. 837 00:46:35,720 --> 00:46:40,480 Anda boleh melihat bahawa saya tidak mempunyai mendapati nama pakej yang betul. 838 00:46:40,480 --> 00:46:42,820 >> Jadi bagaimana anda mengetahui tentang pakej? 839 00:46:42,820 --> 00:46:46,380 Baik ada laman web yang besar, dibuat didapati oleh orang Meteor, 840 00:46:46,380 --> 00:46:47,780 dipanggil atmospherejs.com. 841 00:46:47,780 --> 00:46:52,520 Atmospherejs, satu perkataan, titik com, adalah repositori besar 842 00:46:52,520 --> 00:46:57,660 untuk mencari semua Meteor pakej di dalam tabung. 843 00:46:57,660 --> 00:47:05,140 Saya boleh mencari akaun, dan kemudian ia akan menunjukkan kepada saya semua barangan yang berkaitan, 844 00:47:05,140 --> 00:47:07,320 semua pakej dengan nama akaun. 845 00:47:07,320 --> 00:47:10,180 846 00:47:10,180 --> 00:47:13,270 >> Walaupun yang memuatkan, kita boleh cuba menambah beberapa pakej lain. 847 00:47:13,270 --> 00:47:19,380 Mungkin pakej Meteor yang tidak berfungsi sekarang, tetapi saya boleh menambah Facebook. 848 00:47:19,380 --> 00:47:22,860 849 00:47:22,860 --> 00:47:27,190 Saya boleh menambah akaun dan kemudian menjalankan projek Meteor sekali lagi. 850 00:47:27,190 --> 00:47:33,260 851 00:47:33,260 --> 00:47:36,900 Apabila ini bermula, mari kita lihat apa yang berubah di laman web. 852 00:47:36,900 --> 00:47:40,010 853 00:47:40,010 --> 00:47:44,580 Anda boleh see-- saya mungkin perlu memuat semula di sini. 854 00:47:44,580 --> 00:47:47,320 >> Saya mempunyai butang untuk mengkonfigurasi Facebook login. 855 00:47:47,320 --> 00:47:49,765 Dan di sini, saya mempunyai semua Meteor arahan 856 00:47:49,765 --> 00:47:52,960 telah disediakan untuk anda untuk menubuhkan satu app Facebook. 857 00:47:52,960 --> 00:47:58,990 Dan anda boleh menggunakan yang maklumat untuk menambah ID anda. 858 00:47:58,990 --> 00:48:04,130 Sebaik sahaja itu dilakukan, anda perlu Facebook login bekerja dalam aplikasi anda. 859 00:48:04,130 --> 00:48:08,559 >> Saya hanya pergi untuk mendapatkan ID aplikasi dan rahsia, 860 00:48:08,559 --> 00:48:10,100 hanya untuk menunjukkan kepada anda bagaimana ini mungkin bekerja. 861 00:48:10,100 --> 00:48:16,000 862 00:48:16,000 --> 00:48:20,360 Anda akan memerlukan akaun Facebook untuk menggunakan pilihan pemaju Facebook. 863 00:48:20,360 --> 00:48:31,160 864 00:48:31,160 --> 00:48:35,290 Biar saya mencari dengan cepat yang Kunci Meteor yang diperlukan. 865 00:48:35,290 --> 00:48:46,994 866 00:48:46,994 --> 00:48:49,160 Saya mempunyai projek Meteor lain bahawa saya akan menggunakan, 867 00:48:49,160 --> 00:48:55,590 dan saya hanya akan mengambil kunci dari fail itu. 868 00:48:55,590 --> 00:49:14,410 869 00:49:14,410 --> 00:49:20,930 >> Dan sekali saya merasa, saya hanya boleh untuk menyalin kunci ini ke Facebook saya. 870 00:49:20,930 --> 00:49:23,489 Jadi di sini adalah kunci. 871 00:49:23,489 --> 00:49:24,280 Dan ini adalah rahsia. 872 00:49:24,280 --> 00:49:26,071 Anda tidak perlu berkongsi ini dengan orang. 873 00:49:26,071 --> 00:49:28,870 874 00:49:28,870 --> 00:49:30,910 Dan kemudian anda memberikan rahsia apl anda. 875 00:49:30,910 --> 00:49:33,560 Dan ini adalah supaya Facebook mengetahui anda berada anda. 876 00:49:33,560 --> 00:49:37,630 877 00:49:37,630 --> 00:49:39,080 Dan anda menyimpan konfigurasi. 878 00:49:39,080 --> 00:49:45,160 879 00:49:45,160 --> 00:49:48,640 >> Saya berfikir dalam proses saya telah berhenti aplikasi Meteor saya. 880 00:49:48,640 --> 00:49:52,290 Jadi saya hanya ingin memastikan ia masih ada. 881 00:49:52,290 --> 00:49:54,962 882 00:49:54,962 --> 00:49:58,610 OK, mari kita memastikan pelayan Meteor kami sedang berjalan jadi Laman web ini sedang digunakan. 883 00:49:58,610 --> 00:50:02,440 Perhatikan jika kita menghentikan Meteor pelayan, halaman yang masih ada. 884 00:50:02,440 --> 00:50:04,700 Ia hanya tidak akan mengemas kini lagi. 885 00:50:04,700 --> 00:50:10,290 Pelayan Meteor adalah perlu untuk memastikan halaman itu hidup. 886 00:50:10,290 --> 00:50:14,050 >> OK, saya telah dikemukakan, dan kini Saya boleh log masuk dengan Facebook. 887 00:50:14,050 --> 00:50:17,400 Sekarang ia hanya satu perkara mempunyai pop up Facebook 888 00:50:17,400 --> 00:50:21,710 dan meletakkan di dalam akaun anda maklumat dan pembalakan di. 889 00:50:21,710 --> 00:50:24,520 890 00:50:24,520 --> 00:50:27,930 Sebaik sahaja anda berbuat demikian, mungkin Facebook mengomel anda untuk keselamatan beberapa. 891 00:50:27,930 --> 00:50:29,810 Oleh itu, kita hanya akan berhenti di situ. 892 00:50:29,810 --> 00:50:34,110 Pokoknya adalah bahawa apabila anda selesai dengan itu, anda perlu login Facebook. 893 00:50:34,110 --> 00:50:37,850 >> Meteor mempunyai sekumpulan pakej lain juga. 894 00:50:37,850 --> 00:50:39,200 Anda boleh log masuk dengan Google+. 895 00:50:39,200 --> 00:50:40,500 Anda boleh log masuk dengan GitHub. 896 00:50:40,500 --> 00:50:42,170 Anda boleh log masuk dengan Twitter. 897 00:50:42,170 --> 00:50:44,870 Atau jika anda mencari, anda akan menemui banyak perkara-perkara lain 898 00:50:44,870 --> 00:50:49,170 seperti Meetup, LinkedIn, dan Pemaju Meteor. 899 00:50:49,170 --> 00:50:53,100 Jadi Pemaju Meteor adalah pakej saya cari. 900 00:50:53,100 --> 00:50:56,170 meteor menambah akaun-meteor-pemaju. 901 00:50:56,170 --> 00:51:06,192 902 00:51:06,192 --> 00:51:07,900 Dalam pada itu, saya juga ingin mencadangkan 903 00:51:07,900 --> 00:51:11,340 beberapa pakej lain untuk projek anda. 904 00:51:11,340 --> 00:51:14,670 Ia mungkin berguna kepada termasuk pakej jQuery itu. 905 00:51:14,670 --> 00:51:17,909 Ini membolehkan anda untuk menggunakan jQuery dalam pelanggan-pelanggan anda. 906 00:51:17,909 --> 00:51:21,200 Anda hanya boleh melakukannya dengan satu baris, dan Meteor akan memastikan anda up to date 907 00:51:21,200 --> 00:51:21,825 pada jQuery. 908 00:51:21,825 --> 00:51:24,330 909 00:51:24,330 --> 00:51:27,450 Saya juga mengesyorkan houston: admin. 910 00:51:27,450 --> 00:51:31,550 >> Ini adalah jenis seperti phpMyAdmin yang sejenis alat untuk MongoDB anda. 911 00:51:31,550 --> 00:51:33,890 Ini membolehkan anda untuk mengedit data anda dengan mudah 912 00:51:33,890 --> 00:51:37,950 tanpa perlu ke shell Mongo itu, seperti yang telah saya lakukan sebelum ini dalam seminar itu. 913 00:51:37,950 --> 00:51:43,160 914 00:51:43,160 --> 00:51:47,101 Jadi sekarang yang sedang berjalan, mari kita berjalan Meteor lagi dan melihat apa yang boleh kita lakukan. 915 00:51:47,101 --> 00:51:56,240 916 00:51:56,240 --> 00:52:00,720 >> Anda melihat bahawa menambah beberapa pakej mungkin mereka memberikan beberapa amaran. 917 00:52:00,720 --> 00:52:02,720 Anda tidak perlu bimbang tentang itu dengan houston. 918 00:52:02,720 --> 00:52:06,040 919 00:52:06,040 --> 00:52:10,810 Jadi, sekarang kita boleh mempunyai pilihan untuk mengkonfigurasi Meteor admin. 920 00:52:10,810 --> 00:52:15,080 Dan mereka memberi anda arahan-arahan jika anda mahu untuk menetapkan bahawa sehingga. 921 00:52:15,080 --> 00:52:17,750 922 00:52:17,750 --> 00:52:20,440 >> Kami juga boleh sekarang pergi ke / admin. 923 00:52:20,440 --> 00:52:23,280 Ini dibawa kepada anda oleh pakej houston. 924 00:52:23,280 --> 00:52:27,470 Dan ini adalah Meteor antara muka admin. 925 00:52:27,470 --> 00:52:30,660 Anda hanya mewujudkan akaun admin, seperti demikian. 926 00:52:30,660 --> 00:52:38,150 Dan jika anda memuat semula halaman, anda mungkin mempunyai beberapa koleksi muncul. 927 00:52:38,150 --> 00:52:40,980 928 00:52:40,980 --> 00:52:43,460 >> Ia adalah alat yang sangat berguna, dan saya sangat mengesyorkan ia. 929 00:52:43,460 --> 00:52:46,717 930 00:52:46,717 --> 00:52:49,050 Anda boleh melihat bahawa kerana houston telah memberi beberapa kesilapan, 931 00:52:49,050 --> 00:52:52,330 kita tidak mempunyai koleksi menunjukkan sehingga sekarang. 932 00:52:52,330 --> 00:52:56,800 Cara anda akan menggunakan houston adalah memastikan fungsi ini mendapat 933 00:52:56,800 --> 00:52:58,860 dipanggil mudah-todos anda. 934 00:52:58,860 --> 00:53:01,370 Jadi houston tidak tahu apa tugas saya. 935 00:53:01,370 --> 00:53:04,490 >> Kami menubuhkan Mongo koleksi dipanggil tugas. 936 00:53:04,490 --> 00:53:11,390 Mari kita pergi ke dalam mudah-todos dan hanya memastikan bahawa dalam JavaScript, 937 00:53:11,390 --> 00:53:16,295 kami telah menambah tugas untuk koleksi kami. 938 00:53:16,295 --> 00:53:19,340 939 00:53:19,340 --> 00:53:25,670 Kami kini telah menyimpan, dan ia membina permohonan itu, menyegarkan. 940 00:53:25,670 --> 00:53:26,750 Dan mari kita lihat. 941 00:53:26,750 --> 00:53:29,090 Sekarang kita mempunyai beberapa tugas. 942 00:53:29,090 --> 00:53:32,630 Dan kita boleh menambah beberapa tugas baru. 943 00:53:32,630 --> 00:53:35,840 Tetapi jika kita ingin menambah tugas, mari kita melakukannya dengan aplikasi itu sendiri. 944 00:53:35,840 --> 00:53:39,660 945 00:53:39,660 --> 00:53:41,050 >> Sekarang kita boleh menambah beberapa data. 946 00:53:41,050 --> 00:53:53,410 Hi, ini adalah tugas. 947 00:53:53,410 --> 00:53:57,080 Ia seolah-olah jenis pelik yang kami tidak melihat apa-apa tugas. 948 00:53:57,080 --> 00:54:00,290 949 00:54:00,290 --> 00:54:05,260 Kita mungkin mahu untuk memeriksa jika kita mendapat apa-apa kesilapan di sini, atau mungkin di tempat lain. 950 00:54:05,260 --> 00:54:08,810 951 00:54:08,810 --> 00:54:20,260 Jika kita pergi ke admin, yang seolah-olah pelik. 952 00:54:20,260 --> 00:54:24,080 Jika anda menarik repositori selepas seminar ini, 953 00:54:24,080 --> 00:54:27,580 Saya akan memastikan bahawa mudah-todos bekerja dengan houston. 954 00:54:27,580 --> 00:54:30,370 Malangnya, ia tidak kelihatan menjadi bekerja pada masa ini sangat. 955 00:54:30,370 --> 00:54:34,810 956 00:54:34,810 --> 00:54:37,640 >> Adakah terdapat apa-apa soalan lain? 957 00:54:37,640 --> 00:54:41,800 Houston biasanya adalah alat yang berfungsi dengan baik. 958 00:54:41,800 --> 00:54:44,510 Houston khusus adalah sedikit buggier daripada yang lain, 959 00:54:44,510 --> 00:54:49,470 tetapi saya mengesyorkan ia apabila ia berfungsi. 960 00:54:49,470 --> 00:54:50,080 Yeah. 961 00:54:50,080 --> 00:54:52,395 >> PENONTON: Apa yang boleh dilakukan dengan pakej Facebook 962 00:54:52,395 --> 00:54:54,270 sekali seorang pengguna log masuk dengan Facebook mereka? 963 00:54:54,270 --> 00:54:55,978 >> ROGER ZURAWICKI: Setelah seorang pengguna log masuk, 964 00:54:55,978 --> 00:54:59,540 anda boleh membuat panggilan ke API Facebook. 965 00:54:59,540 --> 00:55:02,890 Banyak yang lebih terletak kepada bagaimana Facebook membuka API mereka. 966 00:55:02,890 --> 00:55:05,120 Meteor, pastikan anda mempunyai sambungan. 967 00:55:05,120 --> 00:55:09,300 Tetapi segala-galanya selepas itu adalah satu perkara yang belajar bagaimana untuk menggunakan API Facebook. 968 00:55:09,300 --> 00:55:10,216 PENONTON: [didengar]. 969 00:55:10,216 --> 00:55:17,756 970 00:55:17,756 --> 00:55:18,880 ROGER ZURAWICKI: Baiklah. 971 00:55:18,880 --> 00:55:21,670 Terima kasih banyak untuk seminar ini CS50 dalam Meteor. 972 00:55:21,670 --> 00:55:24,060 Jika anda mempunyai sebarang soalan, anda boleh e-mel saya 973 00:55:24,060 --> 00:55:28,319 di alamat e-mel saya yang disenaraikan di bawah seminar itu. 974 00:55:28,319 --> 00:55:30,110 Dan saya akan dengan senang hati menjawab soalan anda. 975 00:55:30,110 --> 00:55:33,020 Saya juga akan berada di CS50 hackathon perlu 976 00:55:33,020 --> 00:55:35,550 anda perlu membantu dengan projek-projek Meteor anda. 977 00:55:35,550 --> 00:55:37,650 Terima kasih kerana menonton. 978 00:55:37,650 --> 00:55:38,816