[Muzik bermain]
ROGER ZURAWICKI: Hi, saya Nama Roger Zurawicki,
dan saya akan meliputi seminar CS50 Meteor.
Meteor adalah satu rangka kerja baru ditumpukan kepada jenis yang baru web,
bukan PHP membuat permintaan depan dan ke belakang jenis
daripada web yang kita lihat dalam set PHPP, tetapi JavaScript lebih dinamik
bahagian web.
Perkara yang boleh dilakukan Meteor termasuk Pengemaskinian Live
dan segera berkomunikasi antara pengguna laman web yang sama.
>> Untuk seminar ini, kita mempunyai kod dihoskan di GitHub saya.
Anda boleh pergi ke URL ini dan memuat turun ia.
Jika anda tahu bagaimana untuk menggunakan Git, anda boleh mengklon repository.
Jika anda tidak tahu bagaimana untuk menggunakan GIT atau belum digunakan GitHub,
itu benar-benar baik.
Saya akan menunjukkan kepada anda benar-benar cepat bagaimana kita boleh pergi ke GitHub,
dan ada pilihan untuk turun zip yang di sana.
Sebaik sahaja anda memuat turun direktori ini, anda boleh memulakan bermain dengan kod kami.
>> Maklumat lebih lanjut mengenai Meteor boleh didapati di meteor.com.
Dalam folder Seminar, saya sebenarnya mempunyai beberapa projek Meteor boleh kita gunakan.
Salah satu folder yang kita ada dalam kita projek seminar adalah aplikasi todos itu.
Jadi, jika saya pergi ke dalamnya saya, mempunyai Meteor dipasang.
Jadi untuk menjalankannya, saya hanya perlu menaip Meteor, dan Meteor akan dipasang.
Seperti yang anda lihat, kita perlu memastikan kami memasang Meteor.
Jadi, saya hanya akan menjalankannya sekali lagi
memastikan bahawa Meteor dipasang dengan betul.
>> Walaupun saya mempunyai Meteor memasang, saya boleh menunjukkan kepada anda
beberapa demo langsung tapak Meteor akan hidup sekarang di internet.
Saya mempunyai demo app kami.
Anda boleh mengaksesnya di URL berikut.
Ini adalah aplikasi untuk melaksanakannya kami mempunyai di dalam direktori seminar kami.
URL bagi ini adalah rozu-rabbit.meteor.com.
Anda akan melihat bahawa Meteor akan sebenarnya menjadi tuan rumah projek Meteor anda secara percuma.
Dan pada akhir seminar tersebut, anda boleh melakukan ini juga.
>> Ini adalah untuk melakukan senarai apl.
Dan anda boleh log masuk, buat akaun, dan menambah tugas.
Anda boleh membuat akaun seperti demikian.
Dan sekarang, setelah anda mempunyai akaun, anda boleh menambah tugas.
Sebagai contoh, salah satu tugas saya mungkin perlu pergi mengambil dobi saya.
Dan jika anda mengenai perkara ini laman web dalam talian, anda akan
sebenarnya melihat tugas ini pada komputer anda dalam masa nyata.
>> Saya boleh menunjukkan demo cepat ini dengan membuka rozu-arnab
dalam tab yang lain dengan URL yang sama.
Dan kita melihat bahawa data yang sama datang.
Kami juga boleh menjalankannya di pelayar yang lain.
Katakanlah saya menjalankannya dalam Safari.
Dengan cara itu kita tidak log masuk.
Oleh itu, kita mempunyai Meteor yang sama aplikasi, dan sekali ia muatkan,
kita akan melihat data yang sama kami lakukan pada yang pertama.
Seperti yang anda lihat, saya tidak log masuk di sini.
Dan apabila data cek penonton, ia mengemas kini pada semua pelayar
pada masa yang sama.
Ini adalah salah satu yang benar-benar ciri sejuk tentang Meteor.
Dengan hampir tidak ada kerja, anda mempunyai aplikasi pengemaskinian secara langsung
bahawa perubahan pada semua peranti anda sekaligus.
>> Jika saya menyemak kotak semak di sini dalam senarai saya lakukan, kita akan mempunyai,
dalam pelayar Chrome saya yang lain, perkara yang diperiksa.
Dan ini berlaku serta-merta.
Baiklah.
Jadi ia kelihatan seperti Meteor pemasangan bersedia sekarang.
Jadi sekarang mari kita kembali kepada app todos dan menjalankan ini dalam negara.
>> Jika anda mempunyai projek Meteor, anda boleh hanya menjalankannya dengan Meteor arahan.
Apabila anda melakukan ini, Meteor akan melakukan beberapa persiapan
memastikan semua kod anda adalah di dalam semakan.
Dan kemudian ia akan memberitahu anda bahawa projek adalah sedia untuk dihidang.
Anda mungkin perlu untuk membolehkan anda firewall, jika blok komputer anda anda.
>> Jadi apa Meteor memberitahu saya sekarang adalah bahawa pada laman web ini
tempatan ke komputer saya, saya dapat melihat apa projek Meteor ini.
Ambil perhatian bahawa sekarang, aplikasi saya adalah tidak boleh diakses kepada internet.
Kami akan meliputi bagaimana untuk membawa Meteor anda app ke laman web secara langsung sedikit kemudian.
Jadi, saya hanya akan menyalin ini URL sekarang dan pergi ke dalam Google Chrome.
>> Dan ini adalah untuk melakukan senarai dari contoh.
Anda boleh melihat mereka dilaksanakan beberapa ciri-ciri yang lebih di sini.
Kami mempunyai tab yang berbeza, kita mempunyai ciri-ciri akaun sama,
dan kita boleh menambah senarai baru.
Kini, salah satu benar-benar ciri sejuk tentang Meteor
adalah bahawa bukan sahaja boleh ini bekerja pada pelayar web anda,
tetapi anda juga boleh membuat asli iPhone dan Android
aplikasi melalui alat yang dipanggil PhoneGap.
>> Jadi beberapa projek-projek akan datang pra-konfigurasi untuk berjalan
pada iOS, seperti aplikasi todos ini.
Jadi apa yang saya perlu lakukan untuk menjalankannya dalam iOS sedang menaip Meteor, jalankan, dan kemudian iOS.
Dan apabila saya berbuat demikian, Meteor akan menyediakan pakej lagi.
Dan kemudian, sekali ia bersedia IA AKAN memuatkan simulator iOS pada arahan saya.
Nota anda hanya boleh menjalankan aplikasi iOS jika anda mempunyai komputer Mac.
Anda boleh menjalankan aplikasi anda Android pada semua platform.
>> Jadi sekarang anda boleh melihat bahawa iPhone saya simulator datang pada skrin saya.
Dan dalam hanya seketika, ia akan memuatkan dengan app.
Jika kita membuat ia hanya sedikit yang lebih kecil untuk muat pada skrin,
kita lihat kita mempunyai aplikasi iPhone kami.
Dan hanya supaya kita tidak keliru, mari kita membuat
memastikan kita berada di yang sama laman web, tuan rumah tempatan 3000.
>> Jadi di sini adalah satu contoh aplikasi Meteor yang saya mempunyai,
app todos itu dengan berlari, kedua-dua di telefon dan pada pelayar web.
Dan apabila saya menukar barangan dalam penyemak imbas web,
ia segera pergi ke telefon.
Dan saya boleh memadam sesuatu di telefon, dan ia berubah dalam penyemak imbas web.
>> Sekarang, biasanya untuk mewujudkan asli aplikasi telefon untuk iOS atau Android,
anda perlu tahu sama ada atau Jawa Objektif C. teknologi Penggunaan Meteor
untuk membenarkan JavaScript untuk beroperasi sebagai app anda dipanggil PhoneGap.
Apa aplikasi anda pada dasarnya adalah merupakan sebuah pelayar web.
Meteor dan mengendalikan semua bahagian-bahagian yang rumit yang terlibat
untuk membawa bahawa pelayar web untuk iPhone atau peranti Android anda.
Anda boleh melihat bahawa antara muka pengguna adalah licin,
dan ia kelihatan dan berasa sangat sama seperti aplikasi asli.
Notis bahawa jika saya pergi ke rumah skrin sekarang, saya juga mendapatkan ikon.
Ini bukan laman web seperti anda akan mendapati dalam Safari.
Ini adalah aplikasi sendiri.
Anda boleh memasang dan memadamnya jika anda ingin.
>> Kami secara ringkas boleh menunjukkan kepada anda apa kod untuk jenis ini todos app kelihatan seperti.
Jika anda melihat dalam folder yang todos, anda akan melihat terdapat banyak folder.
Tetapi lama-kursus seminar ini, kita akan
memahami apa yang setiap folder digunakan untuk.
Mari kita pergi ke dalam pangkalan jadi kami boleh melihat gambar-gambar yang sedikit lebih baik.
>> Saya akan tekan Kawalan C untuk menghentikan pelayan,
dan kini saya kembali di app todos itu.
Saya mempunyai folder yang berbeza di sini, seperti folder pelanggan, folder pelayan.
Dan folder ini hanya bermakna segala-galanya dalam folder pelanggan
mendapat dilaksanakan pada pelayar web anda.
Segala-galanya dalam folder pelayan mendapat dilaksanakan pada pelayan.
>> Apa yang saya mahu menuding keluar ialah bahawa apa yang kita mempunyai
apabila kami terpaksa berjalan dan telefon kami pelayar web kami, ini adalah pelanggan.
Tetapi apa yang berjalan dalam terminal, itu pelayan.
Kami mempunyai folder lain, seperti lib, yang merupakan kod perpustakaan,
seperti pembantu anda fungsi, yang anda boleh
digunakan pada kedua-dua pelanggan dan pelayan.
Dan kemudian anda mempunyai awam folder dan sumber
folder perlu untuk mendapatkan imej dan CSS lain dimuatkan.
>> Jika anda telah Meteor dipasang, kita akan terus dengan tutorial untuk Meteor.
Anda boleh pergi ke URL ini, meteor.com/install,
untuk mendapatkan baris arahan yang saya menunjukkan anda yang memasang Meteor.
Kami akan pergi melalui pertama beberapa langkah untuk mendapatkan yang lebih baik
rasa tentang cara memasang Meteor.
>> Tetapi pertama, saya fikir ia adalah penting bahawa kita mengkaji sedikit JavaScript.
Untuk menunjukkan kepada anda beberapa contoh bagaimana pengetahuan C kami boleh diterjemahkan
untuk JavaScript, saya telah mencipta beberapa contoh.
Mereka adalah di dalam direktori js itu.
Oleh itu, jika dalam seminar folder anda melihat, ada folder yang dipanggil js.
Dan di sini, kami mempunyai beberapa contoh.
>> Mari kita membuka yang pertama contoh dan melihat dengan cepat.
Apa yang kita lihat adalah standard anda hello perintah dunia.
Anda notis C yang anda mempunyai agak beberapa baris.
Dan sebagai pelajar CS50 tahu, kita memerlukan fungsi utama,
dan kita perlu termasuk standard yang Pustaka I / O untuk memanggil printf.
>> Mari kita lihat bagaimana JavaScript membandingkan.
Saya akan membuka ex1.js.
Mengulas keluar ialah apa yang C kod akan kelihatan seperti,
dan garis bawah adalah semua anda perlu menjalankan dalam Nod.
Anda tidak perlu satu fungsi utama, anda tidak perlu memasukkan apa-apa fail,
dan anda tidak perlu untuk kembali.
Anda hanya memanggil console.log.
Ini adalah sama dengan printf anda.
>> Dan juga ia mengambil yang sama hujah printf akan.
Dan untuk menjalankannya, bukan berjalan membuat EX1,
anda hanya akan memanggil ex1.js. Nod
Anda menulis Nod dan kemudian fail, dan ia akan berjalan.
Ia tidak dapat disusun.
JavaScript adalah bahasa yang diterjemahkan.
Jadi ia tidak perlu disusun sebelum ia berjalan.
Jika saya mahu menjalankan ex1.c, Saya perlu membuat ia pertama,
dan kemudian saya boleh menjalankan laku untuk mendapatkan output yang sama.
>> Mari kita cepat meliputi beberapa konsep JavaScript lain.
Mari kita lihat contoh dua.
Dalam ex2.js, dalam ex2.c, kita boleh melihat bahawa kita mempunyai beberapa kod.
Biar saya cepat pergi ke editor teks yang lebih baik
yang akan menunjukkan ini produk baru yang lebih baik.
Baiklah.
Di sini kita mempunyai contoh 2.c.
Di sini kita mempunyai jenis yang berbeza bahawa kita mencetak.
Dan seperti yang kita tahu, printf mengambil peratus hujah-hujah yang berbeza
untuk mengakses keping yang berbeza data.
Jika kita ingin mencetak tali, kita panggil% s.
Jika kita mahu panggil terapung yang jumlah titik, kita dipanggil% f.
Dan tidak ada cara mudah untuk memanggil Boolean dengan nilai benar atau salah itu.
Tetapi jika anda menggunakan% d, anda boleh mendapatkan satu 0 atau 1 untuk palsu dan benar.
>> JavaScript adalah sedikit lebih bagus untuk kita.
Dalam JavaScript, mari kita lihat beberapa perbezaan yang kita ada dalam fail ini.
Pertama, anda dapati di C kita perlu memulakan setiap pemboleh ubah dengan jenis.
S adalah bintang arang.
Ia rentetan, dan ia tidak boleh menjadi apa-apa jenis.
N adalah apungan.
B adalah bool.
>> Tetapi dalam JavaScript, ada jenis dinamik.
Ini bermakna bahawa anda tidak melakukan perlu memberitahu JavaScript
apa jenis pembolehubah anda akan.
Anda hanya mengatakan var untuk berubah-ubah, nama pembolehubah, dan kemudian nilainya.
Jadi var boleh menjadi apa-apa yang benar-benar.
Ia boleh menjadi rentetan.
Ia boleh menjadi beberapa titik terapung.
Ia boleh menjadi watak.
Ia boleh menjadi satu Boolean.
Dan log konsol berfungsi sedikit berbeza.
Jika anda ingin cetak nombor, anda memanggil% d.
Tetapi kebanyakan nilai-nilai boleh dicetak sebagai tali baik-baik saja.
>> Mari kita berjalan ini dalam Nod untuk melihat apa yang akan berlaku.
Boleh saya hubungi ex2.js Nod, dan kita mendapatkan printf
dengan nilai-nilai CS50, N sebagai nombor titik terapung,
dan kemudian B sebagai Boolean ditukar kepada rentetan yang benar.
Bagaimana pula jika kita dibuat contoh 2.c?
Baik, kami masih mempunyai beberapa lebih gangguan dengan printf.
Perhatikan bahawa titik terapung jumlah perlu diformat dengan betul,
dan bahawa Boolean tidak boleh semata-mata dipaparkan sebagai benar atau palsu.
Baiklah.
Sekarang mari kita lihat contoh tiga.
Dalam contoh tiga, kita menunjukkan bagaimana anda akan menggunakan untuk gelung.
Malah, ia adalah sangat mudah.
Salah satu perkara yang menarik mengenai JavaScript adalah bahawa ia adalah C berasaskan.
Ini bermakna bahawa banyak anda kod akan kelihatan sangat serupa
dan rasa lebih kurang sama.
Dalam satu untuk gelung, satu-satunya perkara yang telah benar-benar berubah di sini
adalah bukan int i, kita mempunyai var i.
Kita masih boleh menetapkan ia untuk menghargai sifar, periksa bahawa itu kurang daripada lima,
dan bertambah sebanyak satu dengan operator ++ itu.
Kami menyeru console.log pada i, dan bahawa kami akan mencetak beberapa dengan setiap baris.
Mari kita menjalankannya benar-benar cepat untuk melihat apa output.
Kami mendapatkan beberapa baru dalam setiap baris.
Satu lagi perkara yang saya mahu anda untuk melihat dengan console.log
adalah anda tidak perlu menulis garis sendeng terbalik n bagi barisan baru.
Console.log akan mencetak segala-galanya di talian sendiri.
Itu adalah ciri yang bagus yang memberikan kita JavaScript.
>> Sekarang mari kita membuka contoh empat.
Dalam contoh empat, pertama dalam C, kita memanggil fungsi beberapa.
Perhatikan bahawa kita perlu mengisytiharkan fungsi sebelum kita menggunakannya dalam utama.
Jika kita mempunyai utama pertama dan kemudian menambah dan kemudian tinggi, membuat,
dentang, atau GCC akan memberikan kita satu kesilapan berkata
bahawa ia tidak tahu apa yang tinggi.
Ia tidak tahu apa add adalah.
Jadi, dalam C, anda perlu cerewet tentang perintah di mana anda memanggil fungsi anda.
>> Mari kita lihat bagaimana anda boleh melakukan ini dalam JavaScript.
Kami mempunyai fail yang berbeza kerana terdapat adalah beberapa cara yang berbeza untuk melakukannya.
Salah satu cara adalah cukup banyak terjemahan langsung.
Oleh kerana fungsi dalam C kembali jenis, dan JavaScript
tidak benar-benar tahu atau penjagaan tentang apa jenis anda kembali,
anda tidak menulis jenis.
Sebaliknya, anda hanya perlu untuk menulis fungsi,
dan semuanya cantik banyak yang sama seperti sebelum ini.
>> Apabila anda mempunyai satu pemboleh ubah, seperti dalam menambah, kita hanya perlu menulis x dan y.
Kami tidak perlu berkata x adalah int.
Kami tidak perlu berkata y adalah int.
Kami kembali dengan sintaks yang sama.
Bagi tinggi, kita mengisytiharkan ia dengan berfungsi dan bukannya tidak sah.
Perhatikan sama ada itu tidak sah atau tidak sah,
ia masih semua fungsi yang sama.
Dan kami hanya tidak meletakkan apa-apa jua dalam kurungan,
dan ia kelihatan sangat seperti kod C.
Dan di bawah, kita boleh memanggilnya di bawah.
>> Jika kita melihat contoh 4b, kita dapati bahawa saya telah mengubah beberapa perkara.
Satu-satunya perkara yang saya telah berubah benar-benar walaupun adalah perintah itu.
Kami mempunyai yang sama fungsi, tetapi kini mereka
diisytiharkan selepas ia digunakan dalam console.log dan tinggi pada baris 18, 19.
Jika anda melakukan ini dalam C, membuat pasti menyebabkan ralat.
Di sini, ini lagi boleh digunakan.
Dan saya boleh menunjukkan ini kepada anda oleh memanggil Nod pada contoh 4b.
>> Satu lagi cara yang kita boleh memanggil fungsi adalah dengan menyimpan berfungsi sebagai pembolehubah.
Seperti yang saya katakan, pembolehubah boleh mempunyai apa-apa jenis.
Salah satu jenis pembolehubah boleh mempunyai adalah suatu fungsi.
Jadi, jika anda melihat penggunaan di contoh 4c, apa yang saya telah berubah
di sini adalah var menambah dan bukannya fungsi tambahan.
Dan kini menambah sama fungsi.
Fungsi ini di sini adalah tanpa nama.
Ia tidak mempunyai nama, maka ia hanya fungsi dan kemudian kurungan.
Syntax selepas itu tidak berubah, tetapi anda
adakah perlu ingat bahawa anda mempunyai satu pemboleh ubah yang anda
menyimpan fungsi ke dalam add, dan pembolehubah yang anda menyimpan ke tinggi.
>> Kerana menambah dan tinggi kini pembolehubah dan tidak fungsi, sesuatu perubahan.
Ini adalah bug biasa saya lihat dalam banyak JavaScripts rakyat,
dan sesuatu yang perlu diingat.
Apabila saya berjalan ini, mari kita lihat apa yang berlaku.
Saya mendapat ralat.
Ia berkata undefined pada ketika ini.
Maka ia berkata ia tidak tahu apa yang menambah adalah.
>> Kerana kini menambah tidak a fungsi, menambah dijadikan pemboleh ubah.
Dan anda tidak benar-benar diberi menambah nilai lagi apabila anda menggunakannya.
Yang membawa kita kepada contoh 4d, di mana jika anda mahu menggunakan pembolehubah sebagai fungsi,
anda hanya perlu untuk memastikan mereka mendapatkan nilai sebelum ia digunakan.
>> Mari kita beralih kepada contoh lima kemudian.
Di sini, kita bercakap mengenai structs dalam C. Pada C, structs
mempunyai struktur tetap ini kepada mereka kerana anda perlu mengisytiharkan mereka
sebelum anda menggunakannya, dan anda mengatakan saya mempunyai seorang pelajar,
dan setiap pelajar mempunyai tepat satu nama, satu tahun, satu jantina.
Ia perlu mempunyai semua daripada mereka.
Ia tidak boleh mempunyai apa-apa nilai lain, dan mereka perlu menjadi jenis tertentu.
>> Kemudian kita boleh memulakan yang struct dalam sintaks ini bagus
kerana ia tahu perintah itu.
Agar mengetahui Roger adalah nama.
Ia tahu bahawa 2016 adalah tahun dan M adalah jantina yang
kerana kita diceritakannya ini senarai ialah pelajar struct.
Dan kemudian anda boleh mencetak ia, mengakses s.name.
Mari kita lihat bagaimana kita akan menukar bahawa untuk JavaScript.
Perhatikan bahawa s kini merupakan berubah-ubah, dan tidak ada jenis.
Ia hanya var satu lagi.
Oleh kerana ia tidak kira jika jenis pembolehubah ini adalah penunjuk,
ia adalah struct, atau apa-apa lagi.
Kami mempunyai sintaks yang sedikit berbeza.
Sintaks ini adalah sintaks objek.
>> Anda mungkin telah melihat ia dalam JSON.
JSON sebenarnya berdiri untuk JavaScript Objek notasi.
Ini adalah bagaimana anda menentukan objek dalam JavaScript.
Kami mempunyai kekunci, yang nilai, seperti nama.
Dan kami memberikan menghargai pada sisi lain dari kolon.
Dan satu hal yang perlu diingat adalah anda tidak perlu untuk mempunyai nama dan setahun
dan jantina untuk objek.
Objek boleh mempunyai nilai-nilai.
Ia boleh mempunyai seberapa banyak yang anda suka.
>> Kita boleh menggunakan objek-objek ini dalam hanya cara yang sama kita akan menggunakan satu struct, s.name.
Kita boleh menjalankan ia benar-benar cepat dengan melakukan nod contoh 5.c.
Kita tidak boleh benar-benar menjalankan fail C dalam Nod.
Ia tidak tahu apa yang C adalah.
Ia hanya tahu JavaScript.
Apabila kita menjalankan ex5.js, kita akan mendapat nilai, yang kami jangkakan.
>> Mari kita beralih kepada contoh enam.
Di sini saya hanya mahu bercakap sedikit sedikit lebih lanjut mengenai JavaScript tatasusunan
kerana mereka sedikit yang berbeza daripada apa yang anda
digunakan dalam C. Tatasusunan adalah notated, tidak dengan kurungan seperti di C,
dengan pendakap kerinting, tetapi kurungan.
Anda boleh mempunyai pelbagai kosong, seperti arr selaras empat.
Anda boleh mempunyai tatasusunan dengan pelbagai nilai.
Dan anda mengaksesnya hanya dengan cara yang sama di C.
>> Sehingga beratur tujuh, segala-galanya seolah-olah cukup mudah.
Satu perbezaan kecil adalah di sini di talian 10.
Cara anda mendapat panjang suatu array hanya dengan memanggil .length.
Pelbagai sebenarnya boleh menjadi dilayan seperti objek,
dan objek ini mempunyai harta panjang anda memanggil untuk mendapatkan panjang itu.
Perhatikan bahawa ini adalah berbeza dalam C kerana dalam C anda
perlu tahu panjang objek anda terlebih dahulu.
>> Jadi satu lagi perkara yang menarik mengenai tatasusunan adalah bahawa anda boleh mempunyai jenis yang berbeza.
Jika anda mempunyai pelbagai dalam C, terdapat adalah tatasusunan nilai tertentu,
sama ada penunjuk struct atau terapung atau [didengar].
Di sini, anda boleh mempunyai nilai yang berbeza.
Saya pertama mempunyai beberapa titik terapung, maka Boolean, kemudian integer lain.
Dan sebenarnya, mereka boleh menukar jenis juga.
Lihatlah talian 16.
Array dua berubah daripada menjadi nombor, integer, untuk rentetan.
>> Satu lagi perkara yang menarik mengenai tatasusunan di sini di talian 19, mereka mempunyai saiz tak terhingga.
Anda hanya boleh berkata saya mahu seratus yang unsur menjadi tali legit.
Dan ini nampaknya tidak membuat akal kerana array hanya
mempunyai ruang untuk tiga elemen, jadi akhirnya ialah dua.
Tetapi apabila anda melakukan ini, mari kita melihat apa yang pelbagai menjadi tiga.
Kami akan menjalankan ini dengan cepat dengan contoh nod six.js.
Kami mendapatkan ini benar-benar panjang pelbagai, dan apa yang berlaku
adalah kita mempunyai unsur-unsur pertama beberapa dan kemudian sekumpulan kosong
sehingga kita mendapatkan tali kita.
JavaScript mengisi dalam pelbagai kerana ia diperlukan.
>> Mari kita akhirnya pergi ke contoh terakhir kami.
Di sini kita mempunyai senarai yang pelajar yang berbeza.
Saya ingin bercakap sedikit sedikit tentang beberapa aspek yang bagus
daripada untuk gelung dalam JavaScript.
Dalam C, bagi gelung adalah sejenis terhad.
Mereka mempunyai struktur tetap, di mana anda mempunyai pembolehubah, anda mempunyai keadaan,
dan kemudian anda melakukan sesuatu pada akhir gelung.
Dan sudah tentu ini kerja-kerja dalam JavaScript, seperti yang kita lihat dalam contoh sebelumnya.
Tetapi kita juga mempunyai cara yang lebih bagus untuk berbuat demikian dalam JavaScript.
Ini dipanggil gelung foreach.
>> Maaf, mari kita kembali untuk contoh tujuh sini.
Kita juga boleh mengatakan seksyen adalah senarai.
Itu, kurniakanlah daku setiap i atau setiap indeks dalam senarai itu.
Maka kita boleh mendapatkan pelajar dengan hanya memanggil bahagian i.
Jadi semua kod menetapkan i sama dengan sifar dan memastikan i
adalah kurang daripada panjang dan menambah satu hingga i setiap kali, itu
menjaga anda lebih baik dengan gelung foreach ini.
>> Bukan sahaja gelung foreach bekerja dalam senarai atau tatasusunan,
mereka juga bekerja dalam objek, yang juga baik.
Anda boleh mendapatkan nama tiap-tiap harta dengan hanya mengambil
kamus atau objek, seperti pelajar, dan kemudian hanya memberikan saya berkata setiap utama.
Utama A akan ini harta, nama atau rumah.
Jadi apa yang akan berlaku di sini ialah kita mencetak nama pertama dan kemudian
rumah setiap pelajar.
>> Saya dapat berjalan ini dalam Nod benar-benar cepat untuk menunjukkan kepada anda.
Kami mendapatkan pertama gaya C untuk gelung, di mana kita akan mendapat setiap objek yang dicetak.
Dan kemudian kita mempunyai JavaScript gaya, di mana anda boleh hanya
mencetak setiap kunci dan menghargai individu.
>> Baiklah.
Sekarang kita telah dilindungi Node.js, saya rasa kita sudah bersedia untuk bermula dengan Meteor.
Seperti yang saya katakan, Meteor melakukan kerja yang hebat menulis beberapa contoh siap
untuk anda yang anda boleh meneroka melalui tutorial ini atau dalam folder seminar itu.
Tetapi di sini saya ingin bermula lebih dari awal.
>> Mari kita membuat mudah untuk dilakukan permohonan.
Ini adalah jenis asas apa untuk melakukan permohonan saya menunjukkan anda lebih awal adalah.
Dalam tutorial ini, anda akan melihat bahawa ada
Meteor yang membuat arahan untuk membuat projek Meteor baru.
Anda perlu memanggil ini untuk untuk menjalankan projek Meteor kerana ia
akan menjalankan arahan untuk mencipta Meteor
fail yang diperlukan untuk projek anda.
>> Jika anda pergi ke dalam pangkalan, kita boleh pergi ke dalam folder yang dipanggil langkah satu.
Dan satu langkah akan sesuai dengan langkah pertama dalam tutorial.
Notis terdapat folder, langkah satu, dua langkah, sehingga ke lima.
Dan setiap satu adalah bersamaan untuk langkah dalam tutorial ini.
Saya akan membukanya dalam editor teks saya di sini
supaya kita dapat melihat sedikit apa yang telah dicipta.
Kita melihat bahawa ada empat bahagian utama.
Ada direktori Meteor, .meteor.
Dan bahawa anda biasanya tidak perlu menyentuh.
Meteor menjaga folder itu, dan ia hanya
akan memastikan bahawa anda projek akan menimbulkan masalah.
>> Kami juga mempunyai tiga fail, fail HTML, fail JavaScript, dan fail CSS.
Mari kita pertama bermula dengan fail HTML.
Pada pandangan pertama, ini kelihatan seperti dokumen HTML biasa.
Tetapi melihat bahawa ada beberapa perbezaan.
Satu, ini tidak sebenarnya dokumen HTML lengkap.
Kami hilang tag HTML.
Ini perkara biasa.
Dalam Meteor, anda tidak dijangka untuk mewujudkan tag HTML.
Itu dilakukan untuk anda.
Anda ingin begin-- jika anda ingin membuat laman web,
anda hanya perlu untuk memulakan dengan tag kepala,
menentukan bahawa, dan kemudian menentukan tag badan.
>> Tetapi jika anda perhatikan dalam ini Fail HTML, kita mempunyai tag baru.
Kami mempunyai tag template.
Ini bukan HTML biasa.
Ini adalah versi khas HTML Meteor yang menyediakan kepada anda.
Ia dipanggil bar ruang.
Anda boleh menentukan template sedikit modul, jenis seperti fungsi penolong,
dalam C atau kod JavaScript.
Templat ini akan mempunyai nama yang dipanggil tugas.
Dan anda boleh lihat di sini di talian 13 yang boleh anda panggil template ini.
Dan apa Meteor akan lakukan adalah hanya mengisi tugas-tugas ini untuk anda.
>> Satu lagi perkara yang anda mungkin notis adalah sedikit berbeza adalah ini setiap fungsi.
Masing-masing akan mengambil pembolehubah tugas dan jenis melaluinya
dalam gelung yang foreach kita lihat dalam contoh tujuh.
Ini boleh mengambil setiap kamus atau senarai, objek atau senarai,
dan ia hanya akan pergi melalui semua nilai seperti gelung foreach akan.
Oleh itu, jika kita telah mempunyai banyak tugas, ini akan memanggil template pada setiap tugas.
>> Mari kita menjalankan projek Meteor yang hanya untuk melihat bahawa ini berlaku.
Saya menjalankan projek Meteor dengan hanya Meteor Meteor atau berjalan.
Dan kini Meteor hanya perlu untuk cepat menyediakan projek itu,
memulakan pangkalan data yang perlu, dan kemudian post app tempatan.
Kita boleh pergi ke pelayar web kami sekarang.
Dan kita akan melihat bahawa kita mempunyai aplikasi yang sangat mudah.
Jadi apa yang kami perhatikan muncul sebenarnya langkah yang satu, fail langkah satu.
>> Mari kita bergerak ke langkah dua hanya kerana Saya fikir ia akan menjadi tujuan yang sama.
Saya hanya akan mengubah kepada direktori langkah dua
dan menjalankan Meteor lagi supaya kita dapat melihat template kami hanya bekerja dengan.
Ya, satu soalan?
>> PENONTON: Jika kami mendapat kebenaran dinafikan, adalah bahawa- apa yang ia
dipanggil untuk itu?
ROGER ZURAWICKI: Jika anda menjalankan Meteor jangka,
dan anda mempunyai kebenaran dinafikan, sesetengah daripada fail anda
mungkin tidak mempunyai kebenaran set yang betul.
Oleh itu, anda perlu menyemak di mana keizinan adalah off.
Mereka boleh menjadi luar dalam Meteor projek anda,
atau mereka boleh menjadi luar dalam Meteor fail sendiri.
>> PENONTON: Jika saya turun tadi daripada GitHub anda, maka apa yang perlu saya lakukan
[Didengar]?
>> ROGER ZURAWICKI: Jika anda ingin memastikan anda boleh mengaksesnya,
ada arahan anda boleh menjalankan.
Biar saya menulis dengan cepat keluar supaya orang lain boleh melihatnya.
Saya akan membuka tab baru di sini dan pergi ke folder seminar saya.
Chmod adalah arahan untuk menukar kebenaran,
dan anda boleh mengatakan r untuk melakukannya secara rekursif bagi setiap fail.
Dan kebenaran, anda boleh cuba 0755 memastikan anda mempunyai akses penuh,
dan orang lain boleh membaca.
Dan jika anda hanya menjalankan arahan ini, ia akan membuat
memastikan keizinan adalah dalam memeriksa seluruh direktori.
Running ls-l akan menunjukkan anda kebenaran dengan lebih terperinci.
Ini kelihatan OK.
>> Apa yang paling penting adalah bahawa anda mempunyai ketiga-tiga
rwx untuk semua fail dalam direktori seminar.
Adakah yang menyelesaikan masalah ini?
>> PENONTON: Ia mengatakan hilang operan [didengar].
[Didengar]
ROGER ZURAWICKI: Anda perlu memastikan anda
mempunyai titik pada akhir perintah anda.
PENONTON: [didengar].
ROGER ZURAWICKI: Baiklah.
Mari kita segera kembali kepada tuan rumah tempatan, aplikasi yang kita ada.
Dan anda akan melihat bahawa kita mempunyai beberapa tugas di sini, seperti yang diharapkan.
Kami mempunyai sekumpulan CSS, yang anda tidak perlu bimbang tentang.
Meteor tutorial hanya memberikan ini untuk anda
untuk membuat anda untuk melakukan senarai lihat sedikit lebih bagus daripada HTML yang jelas nyata.
Dan kita mempunyai fail JavaScript, yang Saya akan pergi ke lebih terperinci sedikit kemudian,
tetapi ia hanya menyediakan tugas-tugas ini.
Ini adalah satu tugas.
Ini adalah tugas dua.
Ini adalah tugas tiga.
Jadi ini adalah data yang di Meteor mendapatkan.
>> Salah satu perkara yang sejuk tentang Meteor adalah bahawa perubahan boleh berlaku secara automatik.
Jika saya mahu menukar menamakan satu tugas pertama,
jadi ia akan berkata ini tidak tugas satu, dan saya menyimpannya,
kemudian apabila saya pergi ke web penyemak imbas, anda boleh menyegarkan ia,
dan ia secara automatik kata ini tidak menegur satu.
Anda boleh melakukan perkara yang sama dalam mana-mana fail-fail ini.
Membuat perubahan, dan bukannya untuk melakukan senarai, saya akan mempunyai ia saya untuk melakukan senarai.
>> Dan satu perkara yang anda hanya perasan, bahawa saya tidak perlu memuat semula.
Idea menyegarkan adalah jenis daripada diselesaikan untuk anda dengan Meteor.
Setiap kali ia mengesan perubahan fail, ia akan memuatkan perubahan untuk anda.
Ini kerja-kerja pada semua fail, sama ada itu HTML, CSS, atau JavaScript.
Untuk menunjukkan kepada anda apa yang aplikasi ini akan melihat seperti tanpa CSS, saya dapat menghapuskannya semua.
Dan apabila ia Reloaded, anda kini mempunyai tidak seperti molek untuk melakukan senarai.
Mari kita meletakkan kandungan yang kembali.
Dan sesungguhnya cukup, ia menyegarkan, dan CSS kami kembali.
Great.
>> Kami kini boleh bergerak dengan tutorial.
Mari kita bercakap tentang langkah dua, template.
Ini adalah apa yang kita hanya melihat dengan tugas yang berbeza.
Meteor akan menerangkan kepada anda apa yang template dan bagaimana logik ini berfungsi.
Tetapi mari kita melihat kod untuk lihat jika kita boleh masuk akal daripada itu.
>> Dalam permohonan yang sangat mudah, seperti apa yang kita ada dalam mudah
lakukan, langkah satu, dua langkah, langkah tiga, empat langkah, langkah lima,
kita tidak mempunyai folder.
Kami tidak mempunyai pelayan folder yang saya nyatakan.
Kami tidak mempunyai pelanggan folder yang telah disebutkan.
Jadi Meteor akan menjalankan semua fail.
Ia akan berjalan baik pada pelanggan, kedua-dua pada pelayan.
>> Dan jika anda ingin bahagian anda JavaScript kod untuk menjalankan hanya pada pelanggan,
mereka perlu memastikan bahawa anda mempunyai jika kenyataan, jenis seperti apa yang
kita ada dalam fail JavaScript kami di sini.
Jadi Meteor, hanya jika itu pelanggan, maka saya
mahu menentukan templat penolong dipanggil tugas.
Apa kod ini benar-benar Adakah ia mengatakan ada
templat objek dipanggil Meteor yang menyediakan.
Dan kami akan menambah penolong.
Pembantu adalah tugas-tugas ini, perkara-perkara seperti tugas-tugas.
>> Anda akan melihat bahawa jika kita kembali kepada Fail HTML, kita dipanggil setiap pada tugas.
Tugas tidak ditakrifkan dalam HTML.
Ia ditakrifkan dalam JavaScript.
Dan Meteor perlu tahu apa tugas adalah apabila kita pergi ke dalam JavaScript sini.
Tugas adalah penolong ini.
Penolong, yang boleh anda fikirkan sebagai pembolehubah template.
Dan apakah tugas lakukan?
Nah, ia mengembalikan senarai nilai.
Kerana itu senarai, kita boleh memanggil setiap di dalamnya.
Jadi itulah sebabnya kita panggil setiap pada tugas.
Dan sekarang kita mempunyai tugas.
>> Apakah tugas lakukan?
Nah, ia mempunyai anak panah ini di sini selepas pendakap kerinting.
Ini bermakna tugas adalah templat.
Ia bukan penolong, seperti apa yang kita hanya melihat.
Ia adalah satu template kami telah ditakrifkan.
Dan di mana kita telah ditakrifkan ia?
Kami telah ditakrifkan di bawah ia di sini.
>> Semua template ini adalah tidak menyebabkan item senarai, dan ia memerlukan teks.
Sekarang, teks seolah-olah menjadi satu penolong, tapi saya akan tunjukkan anda
bahawa ini adalah benar-benar masih ahli data tugas.
Apabila anda memanggil setiap, ia pergi ke struktur data yang sedikit.
Seperti gelung foreach, ia kini hanya kelihatan pada elemen yang pertama dalam objek kami.
Kami melihat teks yang ditakrifkan di sini dalam objek kami.
Jadi Meteor adalah bijak untuk mengetahui bahawa kita berbicara tentang teks ini,
tidak penolong yang dipanggil teks.
Ia hanya mendapat nilai ini teks di sini dan memaparkan sebagai HTML,
dan itulah bagaimana data yang pergi dari JavaScript untuk HTML.
>> Beralih walaupun, dalam contoh ini kita keras berkod nilai-nilai.
Meteor melakukan dua benar-benar perkara yang baik untuk kita.
Selain muat semula hidup yang kita menunjukkan, ia juga menguruskan pangkalan data kami.
Jika anda terpaksa bekerja dengan PHP, anda perlu mengkonfigurasi phpMyAdmin.
Anda perlu memastikan anda jadual semua di dalam semakan.
Anda terpaksa melakukan banyak kerja untuk membuat memastikan data anda telah diformat dengan betul,
PHP dan boleh berkomunikasi dengannya.
>> Sekarang, Meteor menggunakan paradigma baru.
Ini adalah cara yang lebih moden mengendalikan pangkalan data.
Ia adalah teknologi yang dipanggil MongoDB.
Sama seperti dalam JavaScript, kita melihat bahawa ia tidak kira apa jenis data mempunyai.
Semuanya var a.
Ia tidak charstar satu.
Ia tidak int.
Ia bukan satu struct.
Ia hanya var ini, var itu.
>> MongoDB kerja-kerja jenis cara yang sama.
Anda tidak perlu menentukan jadual anda.
Anda tidak perlu untuk mengatakan meja mempunyai nama, yang mempunyai int.
Ia mempunyai, saya tidak tahu, dolar, yang merupakan satu perpuluhan.
Ia hanya JavaScript objek ini, semua VAR ini, pada dasarnya.
Dan ini adalah benar-benar kuat cara untuk prototaip aplikasi anda.
Dan itulah sebabnya Meteor mengambil kesempatan daripada ini.
>> Jika kita pergi ke langkah tiga, mari kita lihat apa yang telah berubah.
Jika kita melihat todos HTML, tidak banyak.
CSS tidak pernah berubah sama sekali.
Tetapi perubahan kecil yang kita lihat dalam HTML adalah kita telah mengubah bagaimana tugas ditakrifkan.
Tugas kini fungsi.
Ini bermakna bahawa setiap kali kita ingin mendapatkan tugas,
kita akan menjalankan fungsi ini.
Ia tidak mengembalikan fungsi sebagai satu nilai.
>> Meteor adalah bijak untuk benar-benar menjalankan fungsi untuk melihat apa yang kita keluar.
Dan ia mengembalikan perkara ini dipanggil tugas.
Kami telah ditakrifkan tugas pada satu baris, dan ia adalah satu koleksi Mongo.
Mongo merujuk kepada pangkalan data Meteor menggunakan,
dan ini baru hanya bermakna kita beri koleksi baru, memanggilnya tugas.
Dalam MySQL, ini akan bersamaan dengan mencari tugas meja dipanggil.
Mongo mempunyai koleksi, tidak jadual.
Jadi ini hanya kelihatan untuk tugas-tugas.
>> Sekarang, dalam template kami penolong dalam template, semua
kita perlu lakukan untuk mendapatkan semua tugas adalah fungsi ini, mencari
dan dakap kosong ini.
Ini adalah lebih khusus kepada Mongo sintaks.
Terdapat banyak dokumentasi dalam talian untuk bagaimana
anda boleh membuat cekap dan benar-benar berguna Mongo pertanyaan.
Tetapi sesuatu seperti ini adalah baik cukup untuk hanya mencari semua data.
>> Kini, salah satu isu yang mungkin anda lihat adalah bahawa kita tidak benar-benar menambah data.
Jadi apa yang berlaku apabila kita sebenarnya menjalankan langkah tiga?
Mari kita cepat pergi ke melangkah tiga dan menjalankan Meteor.
Perhatikan bahawa saya mempunyai satu lagi Meteor projek berjalan di tempat lain,
jadi Meteor tidak suka itu.
Saya hanya akan dekat dengan cepat Meteor lain dengan Kawalan C,
pergi ke langkah tiga, dan menjalankan Meteor lagi.
Perhatikan ia bermula MongoDB kerana MongoDB
adalah sebahagian daripada setiap projek Meteor.
>> Jadi ia mengatakan permohonan saya mempunyai kesilapan.
Itu adalah ciri yang bagus Meteor mempunyai.
Ia akan memastikan anda HTML adalah juga disahkan.
Mari kita cepat melihat mengapa ini berlaku.
Ia seolah-olah saya tidak sengaja disalin kod HTML yang salah.
Jika saya menyimpan sekarang, Meteor dimulakan semula secara automatik pelayan,
dan kini aplikasi sedang berjalan seperti yang diharapkan.
Perhatikan untuk menetapkan ini, anda hanya boleh menjalankan fail HTML yang sama daripada dua langkah,
menyalinnya ke dalam tiga langkah.
>> Kita boleh kembali kepada tuan rumah tempatan kami.
Dan kini kita melihat kita mempunyai untuk melakukan senarai.
Great, tetapi ia kosong.
Kami sebenarnya tidak mempunyai apa-apa tugas dalam pangkalan data Mongo kami.
Jadi mari kita bercakap tentang beberapa cara yang boleh kita lakukan itu.
Jika kita kembali ke terminal, kami boleh menutupnya dan menjalankan Meteor Mongo.
>> Jika anda biasa bagaimana dengan Meteor bekerja,
ini sebenarnya memberikan akses anda untuk MongoDB penuh bagi Meteor.
Perhatikan bahawa anda perlu berjalan Meteor pertama untuk ini untuk bekerja.
Jadi sekiranya saya ini dalam tab baru, saya boleh kembali ke dalam direktori yang sama.
Dan kini Meteor lagi boleh digunakan.
Ini adalah yang segera.
Biar saya sedikit lebih besar supaya kita boleh lihat.
Ini kelihatan sedikit berbeza daripada apa yang boleh digunakan untuk anda
tidak benar-benar perlu menggunakan Mongo.
Inti dari saya di sini adalah supaya anda boleh menggunakan JavaScript.
Tetapi jika anda ingin tahu, API Mongo yang tidak
menggunakan SQL, Bahasa Pertanyaan Berstruktur.
Ia menggunakan bahasa sendiri yang kelihatan banyak seperti JavaScript.
Sangat cepat, kita boleh mencari jadual melalui db.tasks.
Dan ia memberitahu saya ternyata jika kita berjalan mencari,
jenis yang sama dengan apa yang kita ada dengan Meteor, kita boleh memuatkan semua unsur-unsur.
Masalahnya ialah, kita tidak sebenarnya mempunyai tugas-tugas yang ditetapkan.
Oleh itu, ia tidak boleh mendapatkan mereka.
>> Kami boleh memasukkan, walaupun.
Jadi kita boleh menjalankan insert dengan memasukkan arahan.
Dan kita hanya memberikan objek, dan kita hanya
memastikan format yang adalah apa yang kita harapkan.
Jika kita melihat dua langkah, kita melihat bahawa setiap tugas
adalah satu objek dengan teks sebagai utama dan apa sahaja
anda perkara yang perlu dilakukan adalah sebagai pembolehubah.
Oleh itu, kita boleh melakukan sesuatu di sini.
>> Kita boleh mempunyai ia memasukkan tugasan memanggil saya datang dari Mongo.
Dan kita tekan Enter, dan ia berjalan.
Kita boleh berjalan mencari lagi, dan kami melihat bahawa terdapat objek di sini.
Mongo menyerahkan ia ID, yang anda tidak benar-benar perlu bimbang tentang.
Apa yang penting bagi anda adalah data yang anda masukkan ke dalam, adalah data yang anda keluar.
>> Mari kita kembali ke laman web kami, dan hey, tugas kita dimuatkan.
Dan anda dapat melihat bahawa kerana Meteor adalah sangat pintar
dan sentiasa menyegarkan untuk anda, saya tidak perlu menyentuh halaman.
Ia secara automatik dimuatkan.
>> Mari kita menjalankan beberapa kod dalam JavaScript walaupun untuk melakukan ini.
Seperti kita mempunyai Nod di belakang berakhir untuk melaksanakan keluar JavaScript,
kita juga boleh menjalankan JavaScript secara langsung dalam pelayar kami.
Anda boleh melakukan ini dengan ciri-ciri yang dipanggil Periksa Element.
Jika saya klik kanan pada seksyen halaman,
ada pilihan dipanggil Periksa Element.
Jika anda menjalankan pelayar seperti Safari, anda
mungkin perlu untuk membolehkan pemaju anda alat sebelum anda mendapatkan ciri ini.
>> Apa yang kita mengambil berat tentang adalah konsol.
Oleh itu, kita hanya akan pergi ke konsol di bahagian bawah.
Sekarang kita boleh menjalankan apa-apa JavaScript di sini, seperti JavaScript
Saya menunjukkan fail dalam contoh di js.
Tetapi sekarang mari kita lihat tugas.
Kita boleh jalankan arahan kami.
Dan mudah-mudahan saya akan dapat membuat ia sedikit lebih besar supaya kita boleh melihat semua.
>> Jika kita berjalan tasks.find, dan anda akan melihat bahawa ini adalah kod yang sama tepat
yang digunakan oleh fail JavaScript dalam langkah tiga, task.find ini.
Kita boleh menjalankan perkara yang sama, dan sekarang kita mendapatkan beberapa barangan pelik.
Bagaimana kita benar-benar mendapatkan data?
Baik, kami perlu menjalankan ini arahan dipanggil mengambil.
>> Ini amat berguna untuk debugging.
Apa yang anda dapat di sini adalah kursor, dan ini adalah
cara yang baik Meteor mempunyai data semasa mengambil dioptimumkan.
Kursor ini mempunyai semua ciri-ciri untuk pengemaskinian secara langsung dan memuat semula halaman
apabila sesuatu yang telah berubah.
Tetapi ia tidak akan membawa kita data.
Kita boleh mendapatkan data melalui mengambil.
Dan kamu melihat kita mempunyai objek, dan ia seperti apa yang kita mempunyai dalam Mongo,
dengan ID dan teks yang kita masukkan ke dalam.
>> Jadi bagaimana kita memasukkan item dalam Meteor?
Baik, kami hanya mempunyai tugas.
Dan kemudian kita boleh menjalankan arahan insert sama,
memberi kamus atau objek yang dengan format yang sama, teks
dan kemudian saya datang dari konsol.
Sila lihat di atas kerana apabila saya melakukan ini, ia memperlihatkannya dengan jelas di laman web
secara automatik.
>> Perhatikan bahawa anda boleh meletakkan apa-apa anda mahu dalam barang-barang ini.
Ia tidak perlu mempunyai struktur yang tetap.
Saya boleh mempunyai yang sama dengan nombor tiga dan b sama dengan palsu.
Dan ia semua kerja-kerja.
Saya juga boleh memilih untuk tidak termasuk teks sama sekali.
Ini hanya tidak digalakkan walaupun kerana kemudian Meteor
tidak akan tahu apa yang dipaparkan.
Tetapi dalam setiap kes, kita mendapatkan ID, dan itulah
ID objek yang anda boleh menggunakan.
>> Seperti yang kita terus dengan langkah empat dan lima langkah,
tutorial yang akan menunjukkan kepada anda cara-cara yang anda boleh membuat elemen UI menggunakan
HTML yang anda tahu untuk membuat tugas yang berbeza.
Mari kita lihat langkah empat benar-benar cepat.
Kita akan melihat bahawa kami menambah satu seksyen mengenai peristiwa-peristiwa.
Template boleh mempunyai pembantu, yang membawa kita data.
Tetapi ia juga boleh menghubungi acara.
Dan ini adalah di mana barangan menjadi berguna, kerana peristiwa
adalah apa yang berlaku apabila anda klik pada perkara yang berbeza di laman web anda.
>> Di sini, kami adalah kod memberitahu kami menghantar maklumat acara ini.
Tambah apabila anda telah dihantar sesuatu dengan tugas kelas baru.
Apa yang anda perlu di sini adalah pemilih CSS.
Jadi ini hanya kelihatan untuk HTML unsur yang mempunyai tugas kelas baru.
Dan ia kelihatan untuk acara tersebut, seperti selamat.
Peristiwa lain termasuk klik, hover, klik dua kali,
sama dengan apa yang anda dapat dalam HTML biasa.
>> Apa yang anda memberikan di sini kini fungsi.
Dan anda boleh mempunyai anda kod dalam fungsi itu.
Fungsi ini adalah apa yang akhirnya mendapat dipanggil apabila anda menyerahkan tugas baru ini.
Mari kita lihat HTML hanya jadi kami memahami apa tugas baru ini.
Kami telah menambah borang di sini dengan kelas tugas baru.
Dan ia mempunyai input yang mengambil teks.
Dan ini adalah di mana kita akan menambah tugas baru kami.
>> Mari kita berjalan empat langkah dalam laman web untuk melihat apa yang ia kelihatan seperti.
Kita boleh berhenti dahulu daripada MongoDB kami
dari sebelumnya kami contoh dengan Kawalan C.
Dan mari kita mengubahnya menjadi langkah empat direktori.
Kami akan berjalan Meteor lagi untuk memulakan pelayan.
Dan malangnya, saya mempunyai Meteor berjalan di terminal lain.
Jadi, saya hanya akan memastikan ini ditutup.
Mari kita berhenti ini dan perubahan untuk bahagian empat, empat langkah.
OK.
>> Sekarang kod Meteor kami sedang berjalan.
Dan anda boleh melihat bahawa ia dikemaskini, tanpa walaupun kita mempunyai untuk memuat semula halaman.
Apa yang telah berubah di sini kini bahawa kita tidak mempunyai apa-apa tugas,
tetapi kami mempunyai bentuk yang di sini, ini kotak teks, untuk menambah tugas baru kami.
Dan kita boleh menaip tugas kami di sini.
Saya datang dari halaman HTML.
Apabila saya menekan Enter, ia tidak perlu lagi dikemukakan.
>> Kita boleh melihat apa yang berlaku sebagai ditakrifkan oleh kod JavaScript.
Apa fungsi ini lakukan ialah mengambil teks dari bentuk,
dan kemudian hanya dipanggil tasks.insert, seperti yang kami lakukan pada konsol.
Mereka juga telah memilih untuk menambah tarikh createdAt.
Ini adalah bagaimana anda akan menentukan masa semasa.
Selepas itu, ia hilang bentuk dengan membuat memastikan nilai adalah rentetan kosong.
>> Dan kemudian ia kembali panggilan palsu kepada membuat apa-apa pasti lain yang berlaku.
Apabila anda kembali palsu dari Sekiranya bentuk, yang menghentikan pelaksanaan.
Katakanlah bentuk yang mempunyai tindakan, seperti akur kepada halaman PHP.
Jika anda telah tidak dikembalikan palsu, anda akan kembali benar.
Ia akan berakhir membuat permintaan itu.
Memintas palsu itu dan ia berhenti di sana.
>> Jadi yang merupakan demo sedikit tentang Meteor bagaimana kerja-kerja, dan kita telah
telah mengikuti tutorial untuk seketika.
Dan anda boleh sila bebas untuk terus melakukan perkara ini.
Terdapat banyak sumber, dan tutorial yang sebenarnya hanya
sangat baik mengenai menerangkan apa yang sedang berlaku.
Saya ingin menunjukkan kepada anda sekarang, dalam beberapa minit kita tidak buat,
apakah sebahagian daripada ciri sejuk Meteor,
dan apakah sebahagian daripada pakej yang lebih berguna.
Salah satu perkara yang menarik mengenai Meteor adalah bahawa anda mempunyai sistem pakej.
Anda boleh dengan mudah menggabungkan kod yang beribu-ribu pemaju
telah menulis di seluruh dunia ke dalam projek Meteor anda.
Satu contoh ini adalah apa yang anda mungkin lakukan dalam langkah sembilan tutorial, di mana
anda cuba untuk menambah akaun-akaun untuk projek Meteor anda.
Jika kita mempunyai CS50 PHP projek, kita akan mempunyai
bergantung kepada rangka kerja atau kod kita sendiri untuk membuat
memastikan kita selamat mengendalikan kata laluan dan nama pengguna
dan menyimpan pangkalan data dan semua itu.
>> Ia ternyata Meteor mempunyai beberapa pakej untuk melakukannya untuk anda,
dan untuk melakukannya dengan mudah.
Apa yang kita boleh lakukan adalah menambah beberapa pakej.
Jadi mari kita buat betul yang kini di konsol kami.
Saya akan berhenti projek dan sekarang pergi ke mudah-todos.
Sekarang, mudah-todos adalah projek yang anda
perlu dilakukan selepas dengan langkah 11 atau 12 langkah,
pada akhir tutorial ini.
Dan mari kita cepat melihat ia untuk melihat apakah ciri-ciri yang berbeza yang kita ada.
Mari kita memastikan ia berjalan.
Kadang-kadang ia mengambil masa yang lama untuk menyegarkan, tetapi di sini ia adalah.
>> Kami mempunyai pilihan untuk menyembunyikan tugas-tugas yang lengkap, dan kita boleh log masuk.
Dan ini telah dilakukan dengan pakej Meteor.
Ia hebat.
Kami kini telah username dan tanda kata laluan dalam.
Tetapi bagaimana jika kita mahu menambah satu lagi jenis mekanisme login?
Katakan saya mahu log masuk dengan akaun Meteor saya.
Saya akan berjalan meteor add, dan ini adalah sintaks untuk menambah pakej.
Boleh saya katakan akaun, dan accounts.meteor.
Ia akan menemui kini pakej dan beban.
Anda boleh melihat bahawa saya tidak mempunyai mendapati nama pakej yang betul.
>> Jadi bagaimana anda mengetahui tentang pakej?
Baik ada laman web yang besar, dibuat didapati oleh orang Meteor,
dipanggil atmospherejs.com.
Atmospherejs, satu perkataan, titik com, adalah repositori besar
untuk mencari semua Meteor pakej di dalam tabung.
Saya boleh mencari akaun, dan kemudian ia akan menunjukkan kepada saya semua barangan yang berkaitan,
semua pakej dengan nama akaun.
>> Walaupun yang memuatkan, kita boleh cuba menambah beberapa pakej lain.
Mungkin pakej Meteor yang tidak berfungsi sekarang, tetapi saya boleh menambah Facebook.
Saya boleh menambah akaun dan kemudian menjalankan projek Meteor sekali lagi.
Apabila ini bermula, mari kita lihat apa yang berubah di laman web.
Anda boleh see-- saya mungkin perlu memuat semula di sini.
>> Saya mempunyai butang untuk mengkonfigurasi Facebook login.
Dan di sini, saya mempunyai semua Meteor arahan
telah disediakan untuk anda untuk menubuhkan satu app Facebook.
Dan anda boleh menggunakan yang maklumat untuk menambah ID anda.
Sebaik sahaja itu dilakukan, anda perlu Facebook login bekerja dalam aplikasi anda.
>> Saya hanya pergi untuk mendapatkan ID aplikasi dan rahsia,
hanya untuk menunjukkan kepada anda bagaimana ini mungkin bekerja.
Anda akan memerlukan akaun Facebook untuk menggunakan pilihan pemaju Facebook.
Biar saya mencari dengan cepat yang Kunci Meteor yang diperlukan.
Saya mempunyai projek Meteor lain bahawa saya akan menggunakan,
dan saya hanya akan mengambil kunci dari fail itu.
>> Dan sekali saya merasa, saya hanya boleh untuk menyalin kunci ini ke Facebook saya.
Jadi di sini adalah kunci.
Dan ini adalah rahsia.
Anda tidak perlu berkongsi ini dengan orang.
Dan kemudian anda memberikan rahsia apl anda.
Dan ini adalah supaya Facebook mengetahui anda berada anda.
Dan anda menyimpan konfigurasi.
>> Saya berfikir dalam proses saya telah berhenti aplikasi Meteor saya.
Jadi saya hanya ingin memastikan ia masih ada.
OK, mari kita memastikan pelayan Meteor kami sedang berjalan jadi Laman web ini sedang digunakan.
Perhatikan jika kita menghentikan Meteor pelayan, halaman yang masih ada.
Ia hanya tidak akan mengemas kini lagi.
Pelayan Meteor adalah perlu untuk memastikan halaman itu hidup.
>> OK, saya telah dikemukakan, dan kini Saya boleh log masuk dengan Facebook.
Sekarang ia hanya satu perkara mempunyai pop up Facebook
dan meletakkan di dalam akaun anda maklumat dan pembalakan di.
Sebaik sahaja anda berbuat demikian, mungkin Facebook mengomel anda untuk keselamatan beberapa.
Oleh itu, kita hanya akan berhenti di situ.
Pokoknya adalah bahawa apabila anda selesai dengan itu, anda perlu login Facebook.
>> Meteor mempunyai sekumpulan pakej lain juga.
Anda boleh log masuk dengan Google+.
Anda boleh log masuk dengan GitHub.
Anda boleh log masuk dengan Twitter.
Atau jika anda mencari, anda akan menemui banyak perkara-perkara lain
seperti Meetup, LinkedIn, dan Pemaju Meteor.
Jadi Pemaju Meteor adalah pakej saya cari.
meteor menambah akaun-meteor-pemaju.
Dalam pada itu, saya juga ingin mencadangkan
beberapa pakej lain untuk projek anda.
Ia mungkin berguna kepada termasuk pakej jQuery itu.
Ini membolehkan anda untuk menggunakan jQuery dalam pelanggan-pelanggan anda.
Anda hanya boleh melakukannya dengan satu baris, dan Meteor akan memastikan anda up to date
pada jQuery.
Saya juga mengesyorkan houston: admin.
>> Ini adalah jenis seperti phpMyAdmin yang sejenis alat untuk MongoDB anda.
Ini membolehkan anda untuk mengedit data anda dengan mudah
tanpa perlu ke shell Mongo itu, seperti yang telah saya lakukan sebelum ini dalam seminar itu.
Jadi sekarang yang sedang berjalan, mari kita berjalan Meteor lagi dan melihat apa yang boleh kita lakukan.
>> Anda melihat bahawa menambah beberapa pakej mungkin mereka memberikan beberapa amaran.
Anda tidak perlu bimbang tentang itu dengan houston.
Jadi, sekarang kita boleh mempunyai pilihan untuk mengkonfigurasi Meteor admin.
Dan mereka memberi anda arahan-arahan jika anda mahu untuk menetapkan bahawa sehingga.
>> Kami juga boleh sekarang pergi ke / admin.
Ini dibawa kepada anda oleh pakej houston.
Dan ini adalah Meteor antara muka admin.
Anda hanya mewujudkan akaun admin, seperti demikian.
Dan jika anda memuat semula halaman, anda mungkin mempunyai beberapa koleksi muncul.
>> Ia adalah alat yang sangat berguna, dan saya sangat mengesyorkan ia.
Anda boleh melihat bahawa kerana houston telah memberi beberapa kesilapan,
kita tidak mempunyai koleksi menunjukkan sehingga sekarang.
Cara anda akan menggunakan houston adalah memastikan fungsi ini mendapat
dipanggil mudah-todos anda.
Jadi houston tidak tahu apa tugas saya.
>> Kami menubuhkan Mongo koleksi dipanggil tugas.
Mari kita pergi ke dalam mudah-todos dan hanya memastikan bahawa dalam JavaScript,
kami telah menambah tugas untuk koleksi kami.
Kami kini telah menyimpan, dan ia membina permohonan itu, menyegarkan.
Dan mari kita lihat.
Sekarang kita mempunyai beberapa tugas.
Dan kita boleh menambah beberapa tugas baru.
Tetapi jika kita ingin menambah tugas, mari kita melakukannya dengan aplikasi itu sendiri.
>> Sekarang kita boleh menambah beberapa data.
Hi, ini adalah tugas.
Ia seolah-olah jenis pelik yang kami tidak melihat apa-apa tugas.
Kita mungkin mahu untuk memeriksa jika kita mendapat apa-apa kesilapan di sini, atau mungkin di tempat lain.
Jika kita pergi ke admin, yang seolah-olah pelik.
Jika anda menarik repositori selepas seminar ini,
Saya akan memastikan bahawa mudah-todos bekerja dengan houston.
Malangnya, ia tidak kelihatan menjadi bekerja pada masa ini sangat.
>> Adakah terdapat apa-apa soalan lain?
Houston biasanya adalah alat yang berfungsi dengan baik.
Houston khusus adalah sedikit buggier daripada yang lain,
tetapi saya mengesyorkan ia apabila ia berfungsi.
Yeah.
>> PENONTON: Apa yang boleh dilakukan dengan pakej Facebook
sekali seorang pengguna log masuk dengan Facebook mereka?
>> ROGER ZURAWICKI: Setelah seorang pengguna log masuk,
anda boleh membuat panggilan ke API Facebook.
Banyak yang lebih terletak kepada bagaimana Facebook membuka API mereka.
Meteor, pastikan anda mempunyai sambungan.
Tetapi segala-galanya selepas itu adalah satu perkara yang belajar bagaimana untuk menggunakan API Facebook.
PENONTON: [didengar].
ROGER ZURAWICKI: Baiklah.
Terima kasih banyak untuk seminar ini CS50 dalam Meteor.
Jika anda mempunyai sebarang soalan, anda boleh e-mel saya
di alamat e-mel saya yang disenaraikan di bawah seminar itu.
Dan saya akan dengan senang hati menjawab soalan anda.
Saya juga akan berada di CS50 hackathon perlu
anda perlu membantu dengan projek-projek Meteor anda.
Terima kasih kerana menonton.