1 00:00:00,000 --> 00:00:00,500 2 00:00:00,500 --> 00:00:10,960 [音樂播放] 3 00:00:10,960 --> 00:00:12,960 ROGER ZURAWICKI:嗨,我 名字是羅傑Zurawicki, 4 00:00:12,960 --> 00:00:16,410 我將涵蓋 在CS50流星研討會。 5 00:00:16,410 --> 00:00:21,520 流星是一個新的框架 致力於新種類的網絡的, 6 00:00:21,520 --> 00:00:25,220 不是PHP發出請求 來回種類 7 00:00:25,220 --> 00:00:29,070 網絡,我們在PHPP集看到, 但更多的動態JavaScript 8 00:00:29,070 --> 00:00:31,370 份纖維網的。 9 00:00:31,370 --> 00:00:36,260 流星的事情可以做 包括現場更新 10 00:00:36,260 --> 00:00:42,380 並立即溝通 同一個網站的用戶之間。 11 00:00:42,380 --> 00:00:46,420 >> 對於本次研討會,我們有 代碼託管在GitHub上我。 12 00:00:46,420 --> 00:00:49,690 你可以去這個網址並下載。 13 00:00:49,690 --> 00:00:53,085 如果你知道如何使用Git的, 您可以克隆存儲庫。 14 00:00:53,085 --> 00:00:55,460 如果你不知道如何使用 Git的或沒有使用GitHub上, 15 00:00:55,460 --> 00:00:57,030 這是完全沒問題。 16 00:00:57,030 --> 00:01:00,480 我真的會迅速告訴你 我們如何可以去GitHub上, 17 00:01:00,480 --> 00:01:03,604 並有一個選項 下載一個ZIP就在那裡。 18 00:01:03,604 --> 00:01:06,770 一旦你下載這個目錄,你 可以開始使用我們的代碼打。 19 00:01:06,770 --> 00:01:10,200 20 00:01:10,200 --> 00:01:13,190 >> 有關流星的更多信息 可以在meteor.com找到。 21 00:01:13,190 --> 00:01:16,580 在研討會的文件夾,其實我 有一些流星的項目,我們可以使用。 22 00:01:16,580 --> 00:01:20,380 23 00:01:20,380 --> 00:01:26,400 一個我們在文件夾我們 研討會項目是待辦事項應用程序。 24 00:01:26,400 --> 00:01:28,780 所以,如果我走了進去我, 已安裝流星。 25 00:01:28,780 --> 00:01:35,690 因此,要運行它,我只需要鍵入 流星,流星和將安裝。 26 00:01:35,690 --> 00:01:38,310 正如你所看到的,我們必須要 確保我們安裝流星。 27 00:01:38,310 --> 00:01:40,562 所以我只是要 運行一次 28 00:01:40,562 --> 00:01:42,520 確保流星 正確安裝。 29 00:01:42,520 --> 00:01:46,370 30 00:01:46,370 --> 00:01:48,450 >> 雖然我有流星 安裝,我可以告訴你 31 00:01:48,450 --> 00:01:53,760 流星網站的一些現場演示 去住,現在在互聯網上。 32 00:01:53,760 --> 00:01:57,990 我有我們的應用程序的演示。 33 00:01:57,990 --> 00:02:00,740 您可以在以下網址訪問它。 34 00:02:00,740 --> 00:02:06,350 這是做應用程序,我們 在我們的講座目錄。 35 00:02:06,350 --> 00:02:09,940 該網址是 rozu-rabbit.meteor.com。 36 00:02:09,940 --> 00:02:14,782 你會看到流星居然會 承載您的流星項目是免費的。 37 00:02:14,782 --> 00:02:17,490 並在研討會結束時, 你就可以做到這一點。 38 00:02:17,490 --> 00:02:20,550 39 00:02:20,550 --> 00:02:22,160 >> 這是一個待辦事項應用程序。 40 00:02:22,160 --> 00:02:27,740 你可以登錄,創建 帳戶,並添加任務。 41 00:02:27,740 --> 00:02:30,020 您可以創建一個帳戶,像這樣。 42 00:02:30,020 --> 00:02:33,050 43 00:02:33,050 --> 00:02:35,850 而現在,一旦你有一個 帳戶,您可以添加任務。 44 00:02:35,850 --> 00:02:42,780 例如,其中一項任務我 可能需要去拿起我的衣服。 45 00:02:42,780 --> 00:02:45,160 如果你對這個 網站在線,你會 46 00:02:45,160 --> 00:02:49,790 其實看到這個任務 您的計算機實時的。 47 00:02:49,790 --> 00:02:53,760 >> 我可以告訴你一個快速演示 這種通過打開rozu兔 48 00:02:53,760 --> 00:02:56,700 在相同的URL另一個選項卡。 49 00:02:56,700 --> 00:03:00,360 而且我們看到,同樣的數據出現。 50 00:03:00,360 --> 00:03:02,240 我們也可以在運行它 不同的瀏覽器。 51 00:03:02,240 --> 00:03:03,420 說我在Safari瀏覽器中運行它。 52 00:03:03,420 --> 00:03:04,720 這樣,我們沒有登錄。 53 00:03:04,720 --> 00:03:07,750 54 00:03:07,750 --> 00:03:11,060 因此,我們有相同的流星 應用程序,一旦它加載, 55 00:03:11,060 --> 00:03:13,910 我們將看到同樣的數據 我們做的第一個。 56 00:03:13,910 --> 00:03:16,710 正如你所看到的,我不記錄在這裡了。 57 00:03:16,710 --> 00:03:20,000 並且當觀眾的檢查數據, 它更新的所有瀏覽器 58 00:03:20,000 --> 00:03:20,910 同時。 59 00:03:20,910 --> 00:03:23,740 這是真的1 很酷的功能有關流星。 60 00:03:23,740 --> 00:03:27,700 幾乎沒有工作,你 有一個實時更新的應用程序 61 00:03:27,700 --> 00:03:31,240 這對所有的變化 您的設備一次。 62 00:03:31,240 --> 00:03:36,690 >> 如果我在這裡選中的複選框 在我做的名單,我們都會有, 63 00:03:36,690 --> 00:03:41,230 我的其他的Chrome瀏覽器, 該項目勾掉。 64 00:03:41,230 --> 00:03:42,605 而這種情況在瞬間。 65 00:03:42,605 --> 00:03:46,340 66 00:03:46,340 --> 00:03:47,280 行。 67 00:03:47,280 --> 00:03:52,730 所以它看起來像流星 安裝已準備就緒。 68 00:03:52,730 --> 00:03:57,000 所以,現在讓我們回到 待辦事項應用程序在本地運行此。 69 00:03:57,000 --> 00:04:01,599 >> 如果你有一個流星的項目,你可以 只是用命令流星運行它。 70 00:04:01,599 --> 00:04:03,640 一旦你這樣做,流星 會做一些準備工作 71 00:04:03,640 --> 00:04:06,120 以確保所有的 你的代碼是在檢查。 72 00:04:06,120 --> 00:04:12,440 然後它會告訴你, 項目準備送達。 73 00:04:12,440 --> 00:04:17,750 您可能需要讓你的 防火牆,如果你的電腦,你的塊。 74 00:04:17,750 --> 00:04:22,440 >> 那麼,什麼流星告訴我 現在的問題是,在這個網站 75 00:04:22,440 --> 00:04:26,100 本地到我的電腦,我可以看到 這是什麼流星項目。 76 00:04:26,100 --> 00:04:29,290 需要注意的是,現在,我的應用程序是 不能訪問到互聯網。 77 00:04:29,290 --> 00:04:35,170 我們將討論如何把你的流星 應用到直播現場有點以後。 78 00:04:35,170 --> 00:04:40,510 所以我只是要複製此 URL現在​​進入谷歌Chrome瀏覽器。 79 00:04:40,510 --> 00:04:42,600 >> 這就是做 從這個例子列出。 80 00:04:42,600 --> 00:04:46,080 你可以看到他們實施 一些更多的功能在這裡。 81 00:04:46,080 --> 00:04:49,210 我們有不同的選項卡中,我們 具有相同的帳戶功能, 82 00:04:49,210 --> 00:04:52,141 我們可以添加新的列表。 83 00:04:52,141 --> 00:04:54,140 現在,一個真正的 關於流星很酷的功能 84 00:04:54,140 --> 00:04:57,450 是,這不僅可以 在您的網頁瀏覽器中, 85 00:04:57,450 --> 00:05:00,030 但你也可以創建 原生iPhone和Android 86 00:05:00,030 --> 00:05:02,990 通過一個名為PhoneGap的應用程序的工具。 87 00:05:02,990 --> 00:05:06,740 >> 因此,一些項目會 預先配置為運行 88 00:05:06,740 --> 00:05:08,700 在iOS上,這樣的待辦事項應用程序。 89 00:05:08,700 --> 00:05:14,780 因此,所有我需要做的iOS中運行 類型是流星,運行,然後的iOS。 90 00:05:14,780 --> 00:05:17,540 當我這樣做,流星 將再次準備包。 91 00:05:17,540 --> 00:05:21,670 然後,一旦它準備好,它會 加載在我的命令的iOS模擬器。 92 00:05:21,670 --> 00:05:24,745 注意你只能運行iOS應用 如果你有一台Mac電腦。 93 00:05:24,745 --> 00:05:27,650 94 00:05:27,650 --> 00:05:30,730 你可以運行你的應用程序 Android的所有平台上。 95 00:05:30,730 --> 00:05:34,070 96 00:05:34,070 --> 00:05:38,290 >> 所以,現在你可以看到我的iPhone 模擬器來到了我的屏幕上。 97 00:05:38,290 --> 00:05:40,370 並在短短的一瞬間, 它會加載的應用程序。 98 00:05:40,370 --> 00:05:46,070 99 00:05:46,070 --> 00:05:48,490 如果我們只是有點 小以適應屏幕上, 100 00:05:48,490 --> 00:05:50,780 我們可以看到,我們有我們的iPhone應用程序。 101 00:05:50,780 --> 00:05:53,220 而只是讓我們不這樣做 感到困惑,讓我們 102 00:05:53,220 --> 00:05:59,790 相信大家都在同一個 網站,本地主機3000。 103 00:05:59,790 --> 00:06:03,490 >> 所以這裡有一個例子 流星的應用程序我有, 104 00:06:03,490 --> 00:06:08,770 在待辦事項應用程序,無論是運行 電話和網絡瀏覽器。 105 00:06:08,770 --> 00:06:10,770 當我改變的東西 在網絡瀏覽器, 106 00:06:10,770 --> 00:06:12,675 立刻去了電話。 107 00:06:12,675 --> 00:06:16,500 我可以刪除手機上的東西, 和它的變化,在網絡瀏覽器。 108 00:06:16,500 --> 00:06:21,050 >> 現在,常以創建本地 手機應用程序適用於iOS或Android, 109 00:06:21,050 --> 00:06:26,090 你需要知道Java或 客觀C.技術流星用途 110 00:06:26,090 --> 00:06:29,240 要允許JavaScript作為運行 您的應用程序被稱為PhoneGap的。 111 00:06:29,240 --> 00:06:31,320 你有什麼本質上的應用程序 是一個網頁瀏覽器。 112 00:06:31,320 --> 00:06:34,500 和流星處理所有 所涉及的棘手的部分 113 00:06:34,500 --> 00:06:39,820 用於使該Web瀏覽器來 你的iPhone或Android設備。 114 00:06:39,820 --> 00:06:42,210 你可以看到, 用戶界面是光滑的, 115 00:06:42,210 --> 00:06:45,290 和它的外觀和感覺很 很像一個本機應用程序。 116 00:06:45,290 --> 00:06:48,620 請注意,如果我去家裡 屏幕現在,我也得到一個圖標。 117 00:06:48,620 --> 00:06:50,880 這並不像一個網站 你會發現在Safari瀏覽器。 118 00:06:50,880 --> 00:06:51,860 這是它自己的應用程序。 119 00:06:51,860 --> 00:06:54,130 您可以安裝和 刪除它,如果你願意的話​​。 120 00:06:54,130 --> 00:06:59,500 121 00:06:59,500 --> 00:07:04,436 >> 我們可以簡單地告訴你什麼碼 對於這種待辦事項應用程序看起來像。 122 00:07:04,436 --> 00:07:08,260 如果你看一下在待辦事項文件夾中, 你會看到有很多的文件夾。 123 00:07:08,260 --> 00:07:11,440 但過度的過程中 在研討會中,我們將 124 00:07:11,440 --> 00:07:14,780 了解每個文件夾的用途。 125 00:07:14,780 --> 00:07:17,830 讓我們去到終端,所以我們 可以看到文件的好一點。 126 00:07:17,830 --> 00:07:20,410 >> 我要按下Control C停止服務器, 127 00:07:20,410 --> 00:07:22,770 現在我回到了待辦事項應用程序。 128 00:07:22,770 --> 00:07:26,660 我有不同的文件夾位置,如 客戶端文件夾,服務器文件夾。 129 00:07:26,660 --> 00:07:30,500 這些文件夾只是意味著 一切都在客戶端文件夾 130 00:07:30,500 --> 00:07:32,630 在Web瀏覽器中被執行。 131 00:07:32,630 --> 00:07:35,530 在服務器文件夾中的一切 在服務器上被執行。 132 00:07:35,530 --> 00:07:38,100 >> 我想點 的是,我們有什麼 133 00:07:38,100 --> 00:07:42,140 當我們有我們的電話和運行 我們的網絡瀏覽器,這些都是客戶。 134 00:07:42,140 --> 00:07:45,730 但是,什麼是在運行中 終端,這就是服務器。 135 00:07:45,730 --> 00:07:48,710 我們還有其他的文件夾,如 lib中,這是庫代碼, 136 00:07:48,710 --> 00:07:51,050 喜歡你的幫手 功能,您可以 137 00:07:51,050 --> 00:07:53,710 使用客戶端和服務器上。 138 00:07:53,710 --> 00:07:55,820 然後你有一個公共 文件夾和資源 139 00:07:55,820 --> 00:07:59,310 需要獲取文件夾 您的圖像和其他CSS加載。 140 00:07:59,310 --> 00:08:02,630 141 00:08:02,630 --> 00:08:09,360 >> 如果您已經安裝了流星,我們將 繼續教程流星。 142 00:08:09,360 --> 00:08:12,790 你可以去這個網址, meteor.com/install, 143 00:08:12,790 --> 00:08:17,990 獲取命令行,我 表明您安裝流星。 144 00:08:17,990 --> 00:08:20,240 我們將通過第一 幾個步驟,以獲得更好 145 00:08:20,240 --> 00:08:22,760 感覺如何安裝流星。 146 00:08:22,760 --> 00:08:28,000 >> 但首先,我認為這是非常重要的 我們回顧了JavaScript的一點點。 147 00:08:28,000 --> 00:08:32,360 向您展示如何一些例子 我們的C知識,可以翻譯 148 00:08:32,360 --> 00:08:34,950 JavaScript的,我已經 創建了幾個例子。 149 00:08:34,950 --> 00:08:36,940 它們是在js目錄。 150 00:08:36,940 --> 00:08:41,750 因此,如果在研討會文件夾,你 你看,有一個名為JS的文件夾。 151 00:08:41,750 --> 00:08:44,540 並且在這裡,我們有幾個例子。 152 00:08:44,540 --> 00:08:50,120 >> 讓我們打開了第一 例如,看到非常快。 153 00:08:50,120 --> 00:08:53,980 我們看到的是你的標準 世界您好命令。 154 00:08:53,980 --> 00:08:56,520 您會注意到在C中,你 有不少行。 155 00:08:56,520 --> 00:09:00,490 而作為CS50的學生都知道, 我們需要一個主要功能, 156 00:09:00,490 --> 00:09:05,730 我們必須包括標準 I / O,以調用printf庫。 157 00:09:05,730 --> 00:09:09,320 >> 讓我們來看看如何JavaScript的比較。 158 00:09:09,320 --> 00:09:11,560 我要開ex1.js. 159 00:09:11,560 --> 00:09:14,650 註釋掉是什麼 C代碼會是什麼樣子, 160 00:09:14,650 --> 00:09:17,550 和下方的線是所有 需要在節點中運行。 161 00:09:17,550 --> 00:09:20,452 你並不需要一個main函數,你 不需要包括任何文件, 162 00:09:20,452 --> 00:09:21,660 你不需要返回。 163 00:09:21,660 --> 00:09:23,810 您只要致電的console.log。 164 00:09:23,810 --> 00:09:26,370 這是你的printf的等價物。 165 00:09:26,370 --> 00:09:29,310 >> 它採用相同的 爭論的printf會。 166 00:09:29,310 --> 00:09:33,870 而為了運行它, 而不是運行使EX1, 167 00:09:33,870 --> 00:09:38,930 你只需要調用節點ex1.js. 168 00:09:38,930 --> 00:09:41,830 你寫的節點,然後 該文件,它就會被運行。 169 00:09:41,830 --> 00:09:43,580 它不會編譯。 170 00:09:43,580 --> 00:09:45,970 JavaScript是一種解釋型語言。 171 00:09:45,970 --> 00:09:49,150 所以它並不需要是 它的運行之前編譯。 172 00:09:49,150 --> 00:09:53,450 如果我想跑ex1.c中, 我要讓它首先, 173 00:09:53,450 --> 00:09:59,160 然後我可以運行可執行文件 以得到相同的輸出。 174 00:09:59,160 --> 00:10:02,460 >> 讓我們迅速覆蓋了一些 其他JavaScript概念。 175 00:10:02,460 --> 00:10:04,490 讓我們來看看例子2。 176 00:10:04,490 --> 00:10:14,690 在ex2.js,在ex2.c,我們可以 看到我們有一些代碼。 177 00:10:14,690 --> 00:10:16,550 讓我趕快去 一個更好的文本編輯器 178 00:10:16,550 --> 00:10:18,400 這將顯示這些 新的生產線會好一點。 179 00:10:18,400 --> 00:10:21,760 180 00:10:21,760 --> 00:10:22,380 行。 181 00:10:22,380 --> 00:10:24,190 在這裡,我們有例如2.C. 182 00:10:24,190 --> 00:10:27,360 在這裡,我們有不同類型的 我們要打印出來。 183 00:10:27,360 --> 00:10:30,880 正如我們所知,printf的需要 不同的參數百分比 184 00:10:30,880 --> 00:10:34,050 訪問不同的數據片段。 185 00:10:34,050 --> 00:10:36,840 如果我們想打印 一個字符串,我們稱之為%S。 186 00:10:36,840 --> 00:10:40,390 如果我們要調用一個浮動 點編號,我們叫做%F。 187 00:10:40,390 --> 00:10:45,810 有沒有簡單的方法來調用 其真或假值布爾值。 188 00:10:45,810 --> 00:10:50,760 但是如果你使用%D,就可以得到 0或1的虛假和真實的。 189 00:10:50,760 --> 00:10:53,270 >> JavaScript是我們的一個位更好。 190 00:10:53,270 --> 00:10:57,740 在JavaScript中,讓我們來看看幾個 差異,我們在這個文件中。 191 00:10:57,740 --> 00:11:05,790 首先,您會注意到,在C,我們必須 初始化一個類型的每個變量。 192 00:11:05,790 --> 00:11:06,940 S是一個char明星。 193 00:11:06,940 --> 00:11:08,930 這是一個字符串,它 不能是任何其它類型。 194 00:11:08,930 --> 00:11:10,450 N是一個浮動。 195 00:11:10,450 --> 00:11:11,780 B是一個布爾值。 196 00:11:11,780 --> 00:11:14,220 >> 但在JavaScript中, 也有動態的類型。 197 00:11:14,220 --> 00:11:16,400 這意味著,你不這樣做 需要告訴的JavaScript 198 00:11:16,400 --> 00:11:17,860 什麼類型的變量會。 199 00:11:17,860 --> 00:11:22,730 你剛才說VAR的變量名 的變量,然後將其值的。 200 00:11:22,730 --> 00:11:24,690 所以無功真的可以什麼。 201 00:11:24,690 --> 00:11:25,640 它可以是一個字符串。 202 00:11:25,640 --> 00:11:27,300 它可以是一個浮點數。 203 00:11:27,300 --> 00:11:28,560 它可以是一個字符。 204 00:11:28,560 --> 00:11:31,250 它可以是一個布爾值。 205 00:11:31,250 --> 00:11:34,380 和控制台日誌作品有點不同。 206 00:11:34,380 --> 00:11:37,340 如果你要打印 一個數字,你叫%D。 207 00:11:37,340 --> 00:11:41,740 但大多數值可以 打印字符串就好了。 208 00:11:41,740 --> 00:11:46,220 >> 讓我們在節點運行此 看看會發生什麼。 209 00:11:46,220 --> 00:11:51,880 我可以打電話節點ex2.js, 我們得到的printf 210 00:11:51,880 --> 00:11:56,870 與價值觀CS50,N為 浮點數, 211 00:11:56,870 --> 00:12:00,620 然後B作為布爾 轉換為字符串真。 212 00:12:00,620 --> 00:12:03,830 怎麼樣,如果我們做了榜樣2.C? 213 00:12:03,830 --> 00:12:09,630 好了,我們還是有一定的 更多的煩惱與printf的。 214 00:12:09,630 --> 00:12:13,110 注意,浮點 一些必須正確格式化, 215 00:12:13,110 --> 00:12:18,120 和布爾不能簡單 顯示為真或假。 216 00:12:18,120 --> 00:12:18,620 行。 217 00:12:18,620 --> 00:12:22,680 現在,讓我們來看看例子3。 218 00:12:22,680 --> 00:12:26,470 在例3中,我們展示 你將如何使用for循環。 219 00:12:26,470 --> 00:12:27,630 事實上,這是非常簡單的。 220 00:12:27,630 --> 00:12:31,430 一對好東西 JavaScript是它是基於C的。 221 00:12:31,430 --> 00:12:33,920 這意味著,你的很多 代碼看起來非常相似 222 00:12:33,920 --> 00:12:36,490 感覺大同小異。 223 00:12:36,490 --> 00:12:39,220 在fo​​r循環中,唯一 已真的在這裡改變 224 00:12:39,220 --> 00:12:41,840 是不是int我,我們有變種我。 225 00:12:41,840 --> 00:12:45,470 我們仍然可以將它的價值 零,檢查它的不足五, 226 00:12:45,470 --> 00:12:49,390 並加一 與++運算符。 227 00:12:49,390 --> 00:12:56,286 我們呼籲我的console.log,而且 將打印我們許多與每一行。 228 00:12:56,286 --> 00:12:58,410 讓我們快速運行它真的 看看它輸出。 229 00:12:58,410 --> 00:13:02,320 230 00:13:02,320 --> 00:13:03,880 我們得到每行一個新的號碼。 231 00:13:03,880 --> 00:13:06,920 另一件事,我想你 用的console.log注意 232 00:13:06,920 --> 00:13:09,960 是你沒有寫 反斜杠n表示新的生產線。 233 00:13:09,960 --> 00:13:12,480 CONSOLE.LOG將打印 一切都在自己的路線。 234 00:13:12,480 --> 00:13:14,585 這是一個不錯的功能 的JavaScript給了我們。 235 00:13:14,585 --> 00:13:18,440 236 00:13:18,440 --> 00:13:22,600 >> 現在,讓我們打開了榜樣4。 237 00:13:22,600 --> 00:13:28,710 在例4,先在C, 我們要求的一些功能。 238 00:13:28,710 --> 00:13:33,290 請注意,我們要聲明 功能之前,我們使用他們在主。 239 00:13:33,290 --> 00:13:37,250 如果我們有主要的第一和 再加入再高,製作, 240 00:13:37,250 --> 00:13:39,540 鏗鏘,或將GCC 給我們一個錯誤說 241 00:13:39,540 --> 00:13:41,060 它不知道什麼是高。 242 00:13:41,060 --> 00:13:42,780 它不知道什麼補充的是。 243 00:13:42,780 --> 00:13:46,480 因此,在C,你必須要挑剔 為了在你打電話的功能。 244 00:13:46,480 --> 00:13:49,220 245 00:13:49,220 --> 00:13:51,310 >> 讓我們來看看你怎麼能 在JavaScript中做到這一點。 246 00:13:51,310 --> 00:13:56,060 我們有不同的文件,因為有 有幾種不同的方式來做到這一點。 247 00:13:56,060 --> 00:13:58,950 一種方法是非常 直接翻譯。 248 00:13:58,950 --> 00:14:02,180 因為在C函數 返回類型和JavaScript 249 00:14:02,180 --> 00:14:05,210 並不知道也不關心 關於什麼類型的返回, 250 00:14:05,210 --> 00:14:06,300 你不寫一個類型。 251 00:14:06,300 --> 00:14:08,100 相反,你只需要 寫功能, 252 00:14:08,100 --> 00:14:11,180 一切是相當 很多以前一樣。 253 00:14:11,180 --> 00:14:14,630 >> 當你有一個變量,像 加上,我們只需要編寫x和y。 254 00:14:14,630 --> 00:14:16,060 我們不需要說x是一個int。 255 00:14:16,060 --> 00:14:18,940 我們不需要說y是一個int。 256 00:14:18,940 --> 00:14:21,030 我們返回與相同的語法。 257 00:14:21,030 --> 00:14:24,230 對於高,我們與它聲明 函數而不是無效。 258 00:14:24,230 --> 00:14:26,110 請注意,無論是 它是無效或不空, 259 00:14:26,110 --> 00:14:28,380 它仍然是所有相同的功能。 260 00:14:28,380 --> 00:14:32,440 我們根本不把 在括號什麼, 261 00:14:32,440 --> 00:14:34,690 它看起來非常像C代碼。 262 00:14:34,690 --> 00:14:37,460 以下,我們可以在下面調用它。 263 00:14:37,460 --> 00:14:42,730 >> 如果我們看一下例子4b中,我們注意到 我已經改變了一些東西。 264 00:14:42,730 --> 00:14:45,340 我唯一​​改變的 真的,雖然是訂單。 265 00:14:45,340 --> 00:14:47,340 我們有相同的 的功能,但現在他們 266 00:14:47,340 --> 00:14:52,200 他們在使用後宣布 的console.log和高上線18,19。 267 00:14:52,200 --> 00:14:54,740 如果您在C中這樣做, 使會拋出一個錯誤。 268 00:14:54,740 --> 00:14:56,070 在這裡,這工作得很好。 269 00:14:56,070 --> 00:15:01,935 我可以展示給你 調用節點上的4B的例子。 270 00:15:01,935 --> 00:15:05,350 271 00:15:05,350 --> 00:15:10,130 >> 我們可以調用函數的另一種方式 是通過保存作為變量。 272 00:15:10,130 --> 00:15:13,790 就像我說的,一個變量 可以具有任何類型。 273 00:15:13,790 --> 00:15:16,720 一種類型的可變 可以有一個函數。 274 00:15:16,720 --> 00:15:19,800 所以,如果你看一下例子 4C,我已經改變了 275 00:15:19,800 --> 00:15:24,320 這裡是VAR增加而不是函數添加。 276 00:15:24,320 --> 00:15:26,807 現在等於增加功能。 277 00:15:26,807 --> 00:15:28,140 此功能在這裡是匿名的。 278 00:15:28,140 --> 00:15:33,346 它沒有名字,所以它只是 功能,然後在括號中。 279 00:15:33,346 --> 00:15:35,220 之後,該語法 不改變,但你 280 00:15:35,220 --> 00:15:38,300 確實要記住, 你有你的變量 281 00:15:38,300 --> 00:15:42,940 存儲所述函數到添加,和一個 那你存儲成高變量。 282 00:15:42,940 --> 00:15:47,620 >> 由於添加高現在變量 而不是功能,就有點變味了。 283 00:15:47,620 --> 00:15:50,190 這是我看到了一個共同的錯誤 很多人的JavaScript的, 284 00:15:50,190 --> 00:15:52,410 有什麼東西要牢記。 285 00:15:52,410 --> 00:15:54,365 當我運行這一點,讓我們看看會發生什麼。 286 00:15:54,365 --> 00:15:57,410 287 00:15:57,410 --> 00:15:58,230 我得到一個錯誤。 288 00:15:58,230 --> 00:16:01,000 它說未定義在這一點上。 289 00:16:01,000 --> 00:16:03,520 所以它說它 不知道什麼補充的是。 290 00:16:03,520 --> 00:16:06,010 >> 因為現在加的是不是一個 功能中,添加是一個變量。 291 00:16:06,010 --> 00:16:10,100 而你還沒有真正給 添加一個值然而,當你使用它。 292 00:16:10,100 --> 00:16:14,460 這給我們帶來了例如4D,如果在那裡 要使用變量的函數, 293 00:16:14,460 --> 00:16:17,210 你只需要確保他們 獲得的價值,他們正在使用之前。 294 00:16:17,210 --> 00:16:20,200 295 00:16:20,200 --> 00:16:23,420 >> 讓我們繼續以例五則。 296 00:16:23,420 --> 00:16:27,390 在這裡,我們談論 在結構C.在C,結構 297 00:16:27,390 --> 00:16:30,320 有這樣的固定結構,它們 因為你必須聲明它們 298 00:16:30,320 --> 00:16:33,050 你使用它之前,和 你說我有一個學生, 299 00:16:33,050 --> 00:16:36,645 和每一個學生都有完全相同 一個名字,一年一種性別。 300 00:16:36,645 --> 00:16:37,770 它有讓所有的人。 301 00:16:37,770 --> 00:16:42,280 它不能有任何其他的價值, 並且他們必須是特定類型。 302 00:16:42,280 --> 00:16:47,540 >> 然後,我們可以初始化 結構在這個漂亮的語法 303 00:16:47,540 --> 00:16:49,470 因為它知道的順序。 304 00:16:49,470 --> 00:16:51,460 所以它知道羅傑是一個名字。 305 00:16:51,460 --> 00:16:54,060 它知道,2016年是一個 年和M是性別 306 00:16:54,060 --> 00:16:58,200 因為我們告訴它這 列表是一個結構的學生。 307 00:16:58,200 --> 00:17:01,607 然後你就可以打印 它,訪問s.name。 308 00:17:01,607 --> 00:17:03,690 讓我們來看看我們將如何 將其轉換為JavaScript。 309 00:17:03,690 --> 00:17:06,400 310 00:17:06,400 --> 00:17:09,790 請注意,s是現在 可變的,而且也沒有類型。 311 00:17:09,790 --> 00:17:10,920 這只是一個變種了。 312 00:17:10,920 --> 00:17:14,480 因為它並不重要,如果這件事 這個變量的類型是一個指針, 313 00:17:14,480 --> 00:17:17,440 它是一個結構,或其他任何東西。 314 00:17:17,440 --> 00:17:19,650 我們有一個稍微不同的語法。 315 00:17:19,650 --> 00:17:21,890 這個語法是對象語法。 316 00:17:21,890 --> 00:17:24,400 >> 你可能已經看到它在JSON。 317 00:17:24,400 --> 00:17:27,780 JSON實際上代表的 JavaScript對象符號。 318 00:17:27,780 --> 00:17:31,240 這是你如何定義 在JavaScript對象。 319 00:17:31,240 --> 00:17:34,500 我們有一個密鑰,它是 值,如姓名。 320 00:17:34,500 --> 00:17:37,680 我們給它的值 結腸的另一側。 321 00:17:37,680 --> 00:17:41,850 還有一件事要記住的就是你 不需要有一個名字和一個年 322 00:17:41,850 --> 00:17:42,980 和性別的對象。 323 00:17:42,980 --> 00:17:44,570 一個對象可以沒有價值。 324 00:17:44,570 --> 00:17:46,920 它可以有很多,只要你願意。 325 00:17:46,920 --> 00:17:50,375 >> 我們可以在剛剛使用這些對象 同樣的方法,我們會用一個結構,s.name。 326 00:17:50,375 --> 00:17:53,810 327 00:17:53,810 --> 00:17:57,080 我們可以快速運行真的 這樣做節點例如5.c. 328 00:17:57,080 --> 00:18:00,320 329 00:18:00,320 --> 00:18:02,520 我們不能真正運行節點C文件。 330 00:18:02,520 --> 00:18:03,654 它不知道什麼C是。 331 00:18:03,654 --> 00:18:04,695 它只知道的JavaScript。 332 00:18:04,695 --> 00:18:09,865 當我們運行ex5.js,我們得到 的價值,這是我們的預期。 333 00:18:09,865 --> 00:18:13,490 334 00:18:13,490 --> 00:18:15,980 >> 讓我們轉移到例如6。 335 00:18:15,980 --> 00:18:18,930 在這裡,我只想談一點 更多一點關於JavaScript數組 336 00:18:18,930 --> 00:18:20,930 因為他們是有點 比你有什麼不同 337 00:18:20,930 --> 00:18:26,940 用於在C數組的記譜, 不與支架像C, 338 00:18:26,940 --> 00:18:28,640 用大括號,括號內卻。 339 00:18:28,640 --> 00:18:32,150 你可以有一個空數組, 喜歡改編四線。 340 00:18:32,150 --> 00:18:34,680 你可以有數組 有多個值。 341 00:18:34,680 --> 00:18:39,790 你訪問它們 只是在C以同樣的方式 342 00:18:39,790 --> 00:18:42,990 >> 截至七號線,一切 似乎很簡單。 343 00:18:42,990 --> 00:18:45,390 一個微小的差別就在這裡,在第10行。 344 00:18:45,390 --> 00:18:48,620 途中你得到的長度 陣列僅僅是通過調用.length。 345 00:18:48,620 --> 00:18:50,620 一個數組其實是可以 就像一個對象處理, 346 00:18:50,620 --> 00:18:54,960 而這個對象有一個length屬性 你打電話來獲得它的長度。 347 00:18:54,960 --> 00:18:57,350 注意,這是不同的 在C,因為在C中你 348 00:18:57,350 --> 00:19:01,600 必須知道的長度 提前你的對象。 349 00:19:01,600 --> 00:19:04,700 >> 有關陣列使另一個好處 是,你可以有不同的類型。 350 00:19:04,700 --> 00:19:07,470 如果您在C數組,有 是一個特定的值的陣列, 351 00:19:07,470 --> 00:19:11,900 無論是結構指針 或浮或[聽不清]。 352 00:19:11,900 --> 00:19:13,700 在這裡,你可以有不同的價值觀。 353 00:19:13,700 --> 00:19:17,560 我第一次有一個浮點數, 再一個布爾值,然後又整數。 354 00:19:17,560 --> 00:19:19,670 而實際上,他們可以改變的類型了。 355 00:19:19,670 --> 00:19:21,220 看16行。 356 00:19:21,220 --> 00:19:26,760 陣列二是被改變 數,為整數,為字符串。 357 00:19:26,760 --> 00:19:30,920 >> 有關陣列的另一個好處是這裡 在第19行,它們具有無限的大小。 358 00:19:30,920 --> 00:19:35,900 你可以說我想要的百 元件為字符串合法的。 359 00:19:35,900 --> 00:19:38,510 而這似乎並沒有使 有道理的,因為該數組只 360 00:19:38,510 --> 00:19:41,080 有空間三個要素, 所以到底應該是兩個。 361 00:19:41,080 --> 00:19:44,800 但是,當你做到這一點,讓我們 看到三個變成什麼陣。 362 00:19:44,800 --> 00:19:47,460 我們將很快運行這個 與節點例如six.js. 363 00:19:47,460 --> 00:19:49,990 364 00:19:49,990 --> 00:19:52,180 我們得到這個很長 數組,會發生什麼 365 00:19:52,180 --> 00:19:55,100 在我們最初的幾個要素 然後一堆空白 366 00:19:55,100 --> 00:19:56,580 直到我們得到我們的字符串。 367 00:19:56,580 --> 00:19:58,580 JavaScript的填寫 數組作為它的需要。 368 00:19:58,580 --> 00:20:01,790 369 00:20:01,790 --> 00:20:05,420 >> 讓我們終於進入我們的最後一個例子。 370 00:20:05,420 --> 00:20:08,180 在這裡,我們有一個列表 不同的學生。 371 00:20:08,180 --> 00:20:11,350 我想談一點 一些好的方面位 372 00:20:11,350 --> 00:20:14,240 對在JavaScript中循環。 373 00:20:14,240 --> 00:20:17,500 在C語言中,for循環是一種限制。 374 00:20:17,500 --> 00:20:21,490 他們有一個固定的結構,在那裡你 有一個變量,你有一個條件, 375 00:20:21,490 --> 00:20:23,850 然後你做什麼 在循環的結束。 376 00:20:23,850 --> 00:20:27,560 當然還有這部作品在JavaScript中, 正如我們在前面的例子中看到的。 377 00:20:27,560 --> 00:20:31,030 但我們也有更好的方法 對這樣做在JavaScript中。 378 00:20:31,030 --> 00:20:33,870 這就是所謂的foreach循環。 379 00:20:33,870 --> 00:20:36,580 >> 對不起,讓我們回到 例7這裡。 380 00:20:36,580 --> 00:20:39,320 我們也可以說部分是一個列表。 381 00:20:39,320 --> 00:20:43,250 所以給我的每i或 各項指標在該列表中。 382 00:20:43,250 --> 00:20:46,255 然後,我們可以得到學生 通過只調用了我部分。 383 00:20:46,255 --> 00:20:50,690 因此,所有的設置我的代碼 等於零,並確保我 384 00:20:50,690 --> 00:20:54,420 小於長度和 每次添加一個到我,這是 385 00:20:54,420 --> 00:21:00,220 照顧你,而 很好地與這個foreach循環。 386 00:21:00,220 --> 00:21:02,830 >> 不僅foreach循環 在列表或陣列工作, 387 00:21:02,830 --> 00:21:06,130 他們還工作的對象, 這也是很好的。 388 00:21:06,130 --> 00:21:10,240 你可以得到的名稱 每個屬性,只需服用 389 00:21:10,240 --> 00:21:15,030 字典或一個對象,像學生, 然後只是說給我的每一個關鍵。 390 00:21:15,030 --> 00:21:18,920 一個關鍵是這些 性質,名稱或房子。 391 00:21:18,920 --> 00:21:22,870 那麼什麼會發生在這裡的是, 我們打印出第一名稱,然後 392 00:21:22,870 --> 00:21:24,920 每個學生的家。 393 00:21:24,920 --> 00:21:29,170 >> 我可以在節點運行此 真的很快給你看。 394 00:21:29,170 --> 00:21:35,510 我們得到的第一個C風格的for循環,其中 我們得到的每一個對象被打印出來。 395 00:21:35,510 --> 00:21:38,910 然後,我們有JavaScript的 風格,在那裡你可以 396 00:21:38,910 --> 00:21:41,510 打印出的每個關鍵 和獨立的價值。 397 00:21:41,510 --> 00:21:45,560 398 00:21:45,560 --> 00:21:47,050 >> 行。 399 00:21:47,050 --> 00:21:52,850 現在,我們已經介紹了Node.js的,我覺得 我們已經準備好開始使用流星。 400 00:21:52,850 --> 00:21:56,070 就像我說的,流星的表現非常出色 中寫一些現成的例子 401 00:21:56,070 --> 00:22:00,600 對你,你可以探索通過 本教程或研討會文件夾。 402 00:22:00,600 --> 00:22:03,750 但在這裡,我想 開始從頭越。 403 00:22:03,750 --> 00:22:06,810 >> 讓我們創建一個簡單的做應用。 404 00:22:06,810 --> 00:22:14,140 這是什麼樣的的作為鹼的 做應用程序,我剛才向您展示的。 405 00:22:14,140 --> 00:22:16,990 在本教程中, 會看到有 406 00:22:16,990 --> 00:22:20,180 命令流星創建到 創建一個新的流星的項目。 407 00:22:20,180 --> 00:22:24,510 你需要調用這個以 運行流星的項目,因為它 408 00:22:24,510 --> 00:22:27,470 將運行命令 創建流星 409 00:22:27,470 --> 00:22:31,100 為您的項目文件的必要。 410 00:22:31,100 --> 00:22:35,920 >> 如果你去到終端,我們可以 進入所謂的第一步的文件夾。 411 00:22:35,920 --> 00:22:41,240 並加強人會對應 在本教程的第一步。 412 00:22:41,240 --> 00:22:44,020 注意事項有文件夾,一步 1,步驟2,一路5。 413 00:22:44,020 --> 00:22:47,835 而且每一個對應 在本教程中的一個步驟。 414 00:22:47,835 --> 00:22:50,960 415 00:22:50,960 --> 00:22:52,780 我要打開它 在這裡我的文本編輯器 416 00:22:52,780 --> 00:22:56,280 所以我們可以看到一點點被創造的。 417 00:22:56,280 --> 00:22:58,530 我們注意到,有 有四個主要部分。 418 00:22:58,530 --> 00:23:01,170 有一個流星目錄,.meteor。 419 00:23:01,170 --> 00:23:03,180 那你平時 不需要觸摸。 420 00:23:03,180 --> 00:23:05,070 流星需要照顧 該文件夾,它只是 421 00:23:05,070 --> 00:23:08,640 確保你的 項目將正常工作。 422 00:23:08,640 --> 00:23:14,580 >> 我們也有三個文件,HTML文件, JavaScript文件和CSS文件。 423 00:23:14,580 --> 00:23:18,670 讓我們先開始與HTML文件。 424 00:23:18,670 --> 00:23:21,310 乍一看,這看起來 象正常的HTML文檔。 425 00:23:21,310 --> 00:23:23,490 但是請注意,有 有一些不同之處。 426 00:23:23,490 --> 00:23:26,520 之一,這是不實際 一個完整的HTML文檔。 427 00:23:26,520 --> 00:23:28,640 我們缺少的HTML標籤。 428 00:23:28,640 --> 00:23:29,700 這是正常的。 429 00:23:29,700 --> 00:23:33,560 在流星,你不期望 創造這些HTML標籤。 430 00:23:33,560 --> 00:23:35,260 這樣做了你。 431 00:23:35,260 --> 00:23:38,380 你想,如果你begin-- 要創建一個網站, 432 00:23:38,380 --> 00:23:40,430 你只需要啟動 用頭標籤, 433 00:23:40,430 --> 00:23:43,510 定義,然後 定義body標籤。 434 00:23:43,510 --> 00:23:48,940 >> 但是,如果你在這個通知 HTML文件中,我們有一個新的標籤。 435 00:23:48,940 --> 00:23:50,350 我們有模板標籤。 436 00:23:50,350 --> 00:23:52,050 這是不正常的HTML。 437 00:23:52,050 --> 00:23:55,300 這是HTML的一個特殊版本 該流星向您提供。 438 00:23:55,300 --> 00:23:57,660 這就是所謂的空間吧。 439 00:23:57,660 --> 00:24:00,980 您可以定義模板少 模塊,有點像輔助功能, 440 00:24:00,980 --> 00:24:03,660 在C或JavaScript代碼。 441 00:24:03,660 --> 00:24:06,020 這個模板會 有一個叫任務的名稱。 442 00:24:06,020 --> 00:24:10,520 你可以看到這裡就行 13,你可以調用這些模板。 443 00:24:10,520 --> 00:24:14,380 什麼流星會做的就是 填寫這些任務給你。 444 00:24:14,380 --> 00:24:17,540 445 00:24:17,540 --> 00:24:22,580 >> 你可能會注意到的另一件事是一個 有點不同的是這每一個功能。 446 00:24:22,580 --> 00:24:26,130 每次將變量 種任務,並通過它去 447 00:24:26,130 --> 00:24:28,810 在fo​​reach循環我們 例如7中看到的。 448 00:24:28,810 --> 00:24:34,200 這個每個人都可以拿一本字典 或列表,對象或列表, 449 00:24:34,200 --> 00:24:38,820 它會只是去通過所有的 就像一個foreach循環值會。 450 00:24:38,820 --> 00:24:44,110 因此,如果我們有一大堆的任務,這 將調用每個任務的模板。 451 00:24:44,110 --> 00:24:49,590 >> 讓我們運行的流星項目 剛看到這種情況的發生。 452 00:24:49,590 --> 00:24:53,260 我運行流星項目 只是流星或流星運行。 453 00:24:53,260 --> 00:24:56,690 現在流星只是需要 迅速準備項目, 454 00:24:56,690 --> 00:25:03,320 啟動數據庫如必要, 然後在本地發布的應用程序。 455 00:25:03,320 --> 00:25:07,200 我們可以到我們的網頁瀏覽器了。 456 00:25:07,200 --> 00:25:10,215 我們會看到,我們 有一個很簡單的應用程序。 457 00:25:10,215 --> 00:25:22,190 458 00:25:22,190 --> 00:25:29,130 所以,我們看到出現了竟是 在步驟1,步驟1的文件。 459 00:25:29,130 --> 00:25:33,260 >> 讓我們繼續前進到第二步,只是因為 我認為它會達到同樣的目的。 460 00:25:33,260 --> 00:25:36,500 我只是要改變 到步驟2的目錄 461 00:25:36,500 --> 00:25:39,550 並再次運行流星,所以我們可以看到 模板,我們只是工作與。 462 00:25:39,550 --> 00:25:43,560 463 00:25:43,560 --> 00:25:45,730 是的,一個問題嗎? 464 00:25:45,730 --> 00:25:49,724 >> 觀眾:如果我們要得到許可 否認是that--什麼是它 465 00:25:49,724 --> 00:25:50,390 要求是什麼? 466 00:25:50,390 --> 00:25:52,154 467 00:25:52,154 --> 00:25:54,070 ROGER ZURAWICKI:如果 你正在運行的流星跑, 468 00:25:54,070 --> 00:25:57,280 你有權限 否認,某些文件 469 00:25:57,280 --> 00:25:59,070 可能沒有合適的權限集。 470 00:25:59,070 --> 00:26:03,970 所以,你必須要檢查的地方 權限關閉。 471 00:26:03,970 --> 00:26:06,030 他們可以被關閉 您流星的項目, 472 00:26:06,030 --> 00:26:08,550 或者也可以在離開 流星文件本身。 473 00:26:08,550 --> 00:26:13,742 >> 聽眾:如果我下載剛才 從GitHub上,那麼我該怎麼辦 474 00:26:13,742 --> 00:26:16,110 [聽不清]? 475 00:26:16,110 --> 00:26:20,110 >> ROGER ZURAWICKI:如果你想 以確保您可以訪問它, 476 00:26:20,110 --> 00:26:21,450 還有,你可以運行一個命令。 477 00:26:21,450 --> 00:26:26,590 讓我趕緊寫出來 所以其他人可以看到它。 478 00:26:26,590 --> 00:26:30,670 我要在這裡打開一個新標籤 並進入我的研討會文件夾。 479 00:26:30,670 --> 00:26:33,500 480 00:26:33,500 --> 00:26:36,490 CHMOD就是命令 更改權限, 481 00:26:36,490 --> 00:26:40,060 你可以說r表示做 遞歸地為每個文件。 482 00:26:40,060 --> 00:26:46,040 和權限,你可以嘗試0755 為確保您有充分的機會, 483 00:26:46,040 --> 00:26:47,820 和其他人可以閱讀。 484 00:26:47,820 --> 00:26:50,100 如果你只是運行 這個命令,它會令 485 00:26:50,100 --> 00:26:55,800 確保權限是在 檢查整個目錄。 486 00:26:55,800 --> 00:26:59,160 運行LS-L可以告訴你的 更詳細的權限。 487 00:26:59,160 --> 00:27:01,290 這看起來OK。 488 00:27:01,290 --> 00:27:03,900 >> 什麼是最重要的 你有三個 489 00:27:03,900 --> 00:27:06,610 RWX中的所有文件 研討會目錄。 490 00:27:06,610 --> 00:27:09,415 491 00:27:09,415 --> 00:27:11,330 這是否解決了問題嗎? 492 00:27:11,330 --> 00:27:13,735 >> 觀眾:它說失踪 操作性[聽不清]。 493 00:27:13,735 --> 00:27:17,980 494 00:27:17,980 --> 00:27:18,740 [聽不清] 495 00:27:18,740 --> 00:27:20,490 ROGER ZURAWICKI:您 要確保你 496 00:27:20,490 --> 00:27:23,022 有一個點在你的命令的末尾。 497 00:27:23,022 --> 00:27:23,938 觀眾:[聽不清]。 498 00:27:23,938 --> 00:27:36,395 499 00:27:36,395 --> 00:27:37,520 ROGER ZURAWICKI:好的。 500 00:27:37,520 --> 00:27:42,220 讓我們趕緊回去 本地主機,應用程序,我們有。 501 00:27:42,220 --> 00:27:46,640 你會看到,我們有一個 這裡幾個任務,符合市場預期。 502 00:27:46,640 --> 00:27:49,330 503 00:27:49,330 --> 00:27:51,990 我們有一大堆的CSS,這 你不必擔心。 504 00:27:51,990 --> 00:27:53,740 流星教程 只是給這個給你 505 00:27:53,740 --> 00:27:58,010 讓你的待辦事項清單一看 位比普通的HTML更好。 506 00:27:58,010 --> 00:28:02,290 我們有JavaScript文件,其中 我會更詳細一點後, 507 00:28:02,290 --> 00:28:04,272 但它只是提供了這些任務。 508 00:28:04,272 --> 00:28:04,980 這是任務之一。 509 00:28:04,980 --> 00:28:05,740 這是任務二。 510 00:28:05,740 --> 00:28:06,590 這是任務三種。 511 00:28:06,590 --> 00:28:09,720 因此,這是該數據流星的獲得。 512 00:28:09,720 --> 00:28:15,590 >> 涼爽的事情之一是流星 該變化可以自動發生。 513 00:28:15,590 --> 00:28:18,990 如果我想改變 第一個任務的名稱, 514 00:28:18,990 --> 00:28:22,490 所以它會說這是不是 任務之一,我保存它, 515 00:28:22,490 --> 00:28:26,370 然後當我去到Web 瀏覽器,你可以刷新它, 516 00:28:26,370 --> 00:28:30,861 它會自動說 這不是任務之一。 517 00:28:30,861 --> 00:28:32,860 你可以做同樣的事情 在這些文件中。 518 00:28:32,860 --> 00:28:37,940 做出改變,而不是做 列表中,我將是我做的名單。 519 00:28:37,940 --> 00:28:40,980 >> 還有一件事你剛才注意到, 我甚至沒有刷新。 520 00:28:40,980 --> 00:28:43,960 令人耳目一新的想法是怎麼樣 的幫你解決了與流星。 521 00:28:43,960 --> 00:28:48,970 當它檢測到文件的變化, 它會加載改變你。 522 00:28:48,970 --> 00:28:53,110 這適用於所有的文件,無論是 它的HTML,CSS或JavaScript。 523 00:28:53,110 --> 00:28:57,990 給大家展示一下這個程序會是什麼樣 就像沒有CSS,我可以將其刪除所有。 524 00:28:57,990 --> 00:29:04,720 而當它重新加載,你現在有 一個沒有好看的待辦事項清單。 525 00:29:04,720 --> 00:29:06,370 讓我們把這些內容背。 526 00:29:06,370 --> 00:29:11,343 ,肯定不夠, 刷新,我們的CSS又回來了。 527 00:29:11,343 --> 00:29:11,843 大。 528 00:29:11,843 --> 00:29:15,700 529 00:29:15,700 --> 00:29:20,010 >> 現在,我們可以用教程繼續前進。 530 00:29:20,010 --> 00:29:23,360 讓我們來談談第二步,模板。 531 00:29:23,360 --> 00:29:27,140 這就是我們剛才看到 與不同的任務。 532 00:29:27,140 --> 00:29:31,550 流星會向你解釋什麼 模板和如何邏輯的工作。 533 00:29:31,550 --> 00:29:34,760 但是,讓我們只是看代碼 看看我們是否能有意義出來。 534 00:29:34,760 --> 00:29:38,030 535 00:29:38,030 --> 00:29:41,460 >> 在非常簡單的應用程序, 像我們在簡單 536 00:29:41,460 --> 00:29:44,550 這樣做,第一步,第二步,一步 3,第四步,第五步, 537 00:29:44,550 --> 00:29:45,700 我們沒有任何文件夾。 538 00:29:45,700 --> 00:29:47,533 我們沒有足夠的服務器 文件夾中我提到。 539 00:29:47,533 --> 00:29:50,510 我們沒有客戶端 提到該文件夾。 540 00:29:50,510 --> 00:29:52,290 所以流星將運行中的所有文件。 541 00:29:52,290 --> 00:29:55,210 它會在運行它既 客戶端,服務器上。 542 00:29:55,210 --> 00:29:58,840 >> 如果你想你的JavaScript的部分 代碼只在客戶端上運行, 543 00:29:58,840 --> 00:30:02,350 他們需要確保你有 if語句,有點像什麼 544 00:30:02,350 --> 00:30:04,890 我們有我們的JavaScript文件在這裡。 545 00:30:04,890 --> 00:30:08,010 所以流星,只有當 它的客戶端,那麼我 546 00:30:08,010 --> 00:30:12,355 要定義一個模板 所謂輔助性任務。 547 00:30:12,355 --> 00:30:15,050 548 00:30:15,050 --> 00:30:19,260 這是什麼代碼真的 所做的就是它說有 549 00:30:19,260 --> 00:30:21,800 一個叫做對象模板 該流星提供。 550 00:30:21,800 --> 00:30:23,270 我們要添加一個幫手。 551 00:30:23,270 --> 00:30:27,680 傭工這些任務, 這些東西就像任務。 552 00:30:27,680 --> 00:30:33,890 >> 你會看到,如果我們回到 HTML文件,我們叫上各自的任務。 553 00:30:33,890 --> 00:30:35,750 任務未在HTML中定義。 554 00:30:35,750 --> 00:30:37,770 它是在JavaScript中定義的。 555 00:30:37,770 --> 00:30:42,610 和流星需要知道哪些任務是 當我們進入此處的JavaScript。 556 00:30:42,610 --> 00:30:45,550 任務是這樣的幫手。 557 00:30:45,550 --> 00:30:49,830 幫手,你能想到的 它作為模板變量。 558 00:30:49,830 --> 00:30:51,000 又是什麼任務呢? 559 00:30:51,000 --> 00:30:53,580 嗯,它返回值的列表。 560 00:30:53,580 --> 00:30:56,750 因為它是一個列表, 我們可以在它調用每個。 561 00:30:56,750 --> 00:30:58,590 所以這就是為什麼我們呼籲每一個任務上。 562 00:30:58,590 --> 00:30:59,730 現在我們有任務。 563 00:30:59,730 --> 00:31:02,850 564 00:31:02,850 --> 00:31:03,990 >> 是什麼任務呢? 565 00:31:03,990 --> 00:31:07,740 那麼,它有這個箭頭 在此之後的花括號。 566 00:31:07,740 --> 00:31:09,130 該裝置的任務是一個模板。 567 00:31:09,130 --> 00:31:11,100 這不是一個幫手, 像我們剛才看到的。 568 00:31:11,100 --> 00:31:12,872 這是我們定義的模板。 569 00:31:12,872 --> 00:31:14,080 哪裡有我們定義它? 570 00:31:14,080 --> 00:31:16,950 我們定義它下面的就在這裡。 571 00:31:16,950 --> 00:31:21,160 >> 所有這些模板所做的是使 列表項,並且調用文本。 572 00:31:21,160 --> 00:31:24,160 現在,文本似乎是一個 幫手,但我會告訴你 573 00:31:24,160 --> 00:31:26,610 這其實還是 任務的數據成員。 574 00:31:26,610 --> 00:31:29,230 575 00:31:29,230 --> 00:31:33,670 當你調用每一個,它進入 數據結構一點點。 576 00:31:33,670 --> 00:31:39,130 像foreach循環,現在只是看起來 在我們的對象的第一個元素。 577 00:31:39,130 --> 00:31:41,850 我們看到,文字 這裡定義我們的對象。 578 00:31:41,850 --> 00:31:45,350 因此,流星是聰明,知道 我們談論這段文字, 579 00:31:45,350 --> 00:31:47,630 不叫文字的幫手。 580 00:31:47,630 --> 00:31:52,120 它只是讓這種價值 文字在這裡,它顯示為HTML, 581 00:31:52,120 --> 00:31:55,475 這就是如何將數據變 從JavaScript來的HTML。 582 00:31:55,475 --> 00:32:03,320 583 00:32:03,320 --> 00:32:07,030 >> 上移動,雖然,在本實施例 我們硬編碼這些值。 584 00:32:07,030 --> 00:32:10,440 流星做兩真 好東西給我們。 585 00:32:10,440 --> 00:32:15,050 除了現場的刷新,我們 結果顯示,它也負責管理我們的數據庫。 586 00:32:15,050 --> 00:32:18,750 如果你有使用PHP工作, 你不得不配置的phpMyAdmin。 587 00:32:18,750 --> 00:32:21,320 你必須確保你的 表都在檢查。 588 00:32:21,320 --> 00:32:24,760 你不得不做大量的工作,使 確保您的數據格式正確, 589 00:32:24,760 --> 00:32:27,880 和PHP可以與它進行通信。 590 00:32:27,880 --> 00:32:30,170 >> 現在,流星採用了新的範例。 591 00:32:30,170 --> 00:32:32,310 這是一個更現代的方式 處理的數據庫。 592 00:32:32,310 --> 00:32:34,580 這是一個名為MongoDB的技術。 593 00:32:34,580 --> 00:32:38,740 就像在JavaScript中,我們看到了它 沒有關係是什麼類型的數據了。 594 00:32:38,740 --> 00:32:39,640 一切都是一個變種。 595 00:32:39,640 --> 00:32:40,570 這不是一個charstar。 596 00:32:40,570 --> 00:32:40,930 這不是一個int。 597 00:32:40,930 --> 00:32:41,970 這不是一個結構。 598 00:32:41,970 --> 00:32:44,210 這只是這個變種,該變​​種。 599 00:32:44,210 --> 00:32:46,320 >> MongoDB的作品種方式相同。 600 00:32:46,320 --> 00:32:48,160 你不必定義你的表。 601 00:32:48,160 --> 00:32:50,860 你不必多說表 有一個名字,它有一個int。 602 00:32:50,860 --> 00:32:54,710 它有,我不知道,一 元,這是一個小數。 603 00:32:54,710 --> 00:32:58,360 這只是這些JavaScript對象, 所有這些增值經銷商,從根本上。 604 00:32:58,360 --> 00:33:02,780 這是一個真正強大 辦法原型您的應用程序。 605 00:33:02,780 --> 00:33:06,190 這就是為什麼流星 利用了這一優勢。 606 00:33:06,190 --> 00:33:11,080 >> 如果我們去到第三步, 讓我們來看看發生了什麼變化。 607 00:33:11,080 --> 00:33:15,480 如果我們看一下待辦事項HTML,沒有太大的。 608 00:33:15,480 --> 00:33:17,170 CSS並沒有任何變化。 609 00:33:17,170 --> 00:33:22,420 但小的變化,我們在看到HTML 是我們改變了任務的定義。 610 00:33:22,420 --> 00:33:23,800 任務現在是一個函數。 611 00:33:23,800 --> 00:33:25,800 這意味著,每 一次,我們想要得到的任務, 612 00:33:25,800 --> 00:33:27,480 我們要運行這個功能。 613 00:33:27,480 --> 00:33:29,230 它不返回 函數為一個值。 614 00:33:29,230 --> 00:33:33,710 >> 流星是明智的實際運行 函數來看看我們出去。 615 00:33:33,710 --> 00:33:36,650 並返回這個東西叫做任務。 616 00:33:36,650 --> 00:33:40,650 我們已經在行一個定義的任務, 這是一個蒙戈集合。 617 00:33:40,650 --> 00:33:43,170 蒙戈是指 數據庫流星使用, 618 00:33:43,170 --> 00:33:48,420 而這個新的意思只是讓我們做 一個新的集合,稱之為任務。 619 00:33:48,420 --> 00:33:53,540 在MySQL中,這將相當於 找表稱為任務。 620 00:33:53,540 --> 00:33:56,350 蒙戈具有收藏,不表。 621 00:33:56,350 --> 00:34:00,100 因此,這只是看起來的任務。 622 00:34:00,100 --> 00:34:04,820 >> 現在,模板中我們 助手在模板中,所有的 623 00:34:04,820 --> 00:34:08,380 我們要做的,讓所有的 任務是此功能,找到 624 00:34:08,380 --> 00:34:11,710 而這個空括號。 625 00:34:11,710 --> 00:34:14,150 這是更特別蒙戈語法。 626 00:34:14,150 --> 00:34:16,159 有大量的 在線文檔如何 627 00:34:16,159 --> 00:34:19,360 你可以高效, 真正有用的蒙戈查詢。 628 00:34:19,360 --> 00:34:25,560 但是,這樣的事情是好的 足以讓剛剛找到的所有數據。 629 00:34:25,560 --> 00:34:30,100 >> 現在,其中一個問題,你可能會看到 是,我們從來沒有真正添加數據。 630 00:34:30,100 --> 00:34:35,020 所以會發生什麼,當我們 實際運行第三步? 631 00:34:35,020 --> 00:34:37,550 讓我們快速進入 步驟3和運行流星。 632 00:34:37,550 --> 00:34:42,870 633 00:34:42,870 --> 00:34:45,650 請注意,我有另外的流星 項目運行別的地方, 634 00:34:45,650 --> 00:34:49,110 所以流星不喜歡這一點。 635 00:34:49,110 --> 00:34:52,810 我只是要迅速接近 其他流星與控制C, 636 00:34:52,810 --> 00:34:55,780 進入第三步, 並再次運行流星。 637 00:34:55,780 --> 00:35:01,070 638 00:35:01,070 --> 00:35:03,180 請注意它的開始 MongoDB的,因為MongoDB的 639 00:35:03,180 --> 00:35:06,370 是每一個流星的項目的一部分。 640 00:35:06,370 --> 00:35:09,190 >> 所以說,我的申請有錯誤。 641 00:35:09,190 --> 00:35:10,590 這是一個不錯的功能流星了。 642 00:35:10,590 --> 00:35:13,700 它確保您的 HTML是很好的驗證。 643 00:35:13,700 --> 00:35:17,710 讓我們趕緊來看看這可能是為什麼。 644 00:35:17,710 --> 00:35:26,110 看來我得小心 抄錯HTML代碼。 645 00:35:26,110 --> 00:35:30,610 如果我保存它,現在,流星 自動重啟服務器, 646 00:35:30,610 --> 00:35:34,650 現在的應用程序正在運行預期。 647 00:35:34,650 --> 00:35:39,220 請注意,以解決這個問題,你可以運行 步驟2相同的HTML文件, 648 00:35:39,220 --> 00:35:40,380 它複製到第三步。 649 00:35:40,380 --> 00:35:43,290 650 00:35:43,290 --> 00:35:45,917 >> 我們可以回到我們的本地主機。 651 00:35:45,917 --> 00:35:47,500 現在我們看到,我們有我們做的名單。 652 00:35:47,500 --> 00:35:50,070 偉大的,但它是空的。 653 00:35:50,070 --> 00:35:54,210 我們實際上沒有任何 在我們的數據庫中蒙哥任務。 654 00:35:54,210 --> 00:35:57,930 因此,讓我們來談談一個 幾個方面,我們可以做到這一點。 655 00:35:57,930 --> 00:36:03,240 如果我們回到碼頭,我們 可以將其關閉並運行流星蒙戈。 656 00:36:03,240 --> 00:36:05,320 >> 如果你熟悉 與流星是如何工作的, 657 00:36:05,320 --> 00:36:14,100 這實際上給你訪問 充分的MongoDB的流星。 658 00:36:14,100 --> 00:36:17,570 請注意,您必須運行 第一次流星這個工作。 659 00:36:17,570 --> 00:36:23,840 所以,如果我跑這一個新的標籤,我 可以回到同一目錄中。 660 00:36:23,840 --> 00:36:29,040 661 00:36:29,040 --> 00:36:32,570 現在流星工作得很好。 662 00:36:32,570 --> 00:36:33,600 這是一個提示。 663 00:36:33,600 --> 00:36:36,350 664 00:36:36,350 --> 00:36:38,790 讓我有點 更大,所以我們可以看到。 665 00:36:38,790 --> 00:36:41,550 這看起來比有點不同 你可能會用於向您 666 00:36:41,550 --> 00:36:42,869 並不真正需要使用蒙戈。 667 00:36:42,869 --> 00:36:45,410 我的整點這裡 這樣您就可以使用JavaScript。 668 00:36:45,410 --> 00:36:48,250 但是,如果你很好奇, 蒙戈API不 669 00:36:48,250 --> 00:36:50,730 使用SQL,結構化查詢語言。 670 00:36:50,730 --> 00:36:55,570 它使用自己的語言 看起來很像的JavaScript。 671 00:36:55,570 --> 00:37:00,520 很快,我們就可以找到 經由db.tasks表。 672 00:37:00,520 --> 00:37:08,940 它在告訴我 事實證明,如果我們運行發現, 673 00:37:08,940 --> 00:37:13,450 一種類似於我們曾與 流星,我們可以加載所有的元素。 674 00:37:13,450 --> 00:37:17,330 問題是,我們不 實際上有定義的任何任務。 675 00:37:17,330 --> 00:37:20,600 所以不能讓他們。 676 00:37:20,600 --> 00:37:22,130 >> 我們可以插入,但。 677 00:37:22,130 --> 00:37:25,170 因此,我們可以運行插入 使用命令插入。 678 00:37:25,170 --> 00:37:29,140 我們只是給它 一個對象,我們只是 679 00:37:29,140 --> 00:37:31,840 確保格式是我們所期望的。 680 00:37:31,840 --> 00:37:35,030 如果我們看第二步, 我們看到,每一個任務 681 00:37:35,030 --> 00:37:39,590 為一個對象與文本 作為密鑰和任何 682 00:37:39,590 --> 00:37:41,640 你做的項目是作為一個變量。 683 00:37:41,640 --> 00:37:44,680 所以,我們可以做的東西在這裡。 684 00:37:44,680 --> 00:37:50,160 >> 我們可以把它插入任務 叫我來自蒙戈。 685 00:37:50,160 --> 00:37:52,570 我們按Enter鍵,它運行。 686 00:37:52,570 --> 00:37:56,900 我們可以再次運行發現,我們 看到,有一個對象在這裡。 687 00:37:56,900 --> 00:38:01,810 蒙戈它分配一個ID,你 並不需要擔心。 688 00:38:01,810 --> 00:38:06,690 數據什麼是重要的是你是 你把,是你出的數據。 689 00:38:06,690 --> 00:38:10,500 >> 讓我們回到我們的網站, 哎,我們的任務加載。 690 00:38:10,500 --> 00:38:13,987 你可以看到, 由於流星是非常聰明的 691 00:38:13,987 --> 00:38:16,570 始終刷新你,我 沒有觸及頁面。 692 00:38:16,570 --> 00:38:19,160 它會自動加載。 693 00:38:19,160 --> 00:38:23,520 >> 讓我們來運行一些代碼 雖然JavaScript的做到這一點。 694 00:38:23,520 --> 00:38:26,120 像我們有節點在後面 最終執行了JavaScript的, 695 00:38:26,120 --> 00:38:29,280 我們也可以運行JavaScript 直接在我們的瀏覽器。 696 00:38:29,280 --> 00:38:31,970 您可以通過一個功能做到這一點 所謂的檢查元素。 697 00:38:31,970 --> 00:38:34,210 如果我右鍵點擊一個 頁面的部分中, 698 00:38:34,210 --> 00:38:36,730 還有一個選項 所謂的檢查元素。 699 00:38:36,730 --> 00:38:38,840 如果你正在運行的 瀏覽器Safari瀏覽器一樣,你 700 00:38:38,840 --> 00:38:45,430 可能需要啟用您的開發 之前,你的工具得到這個功能。 701 00:38:45,430 --> 00:38:46,930 >> 我們關心的是控制台。 702 00:38:46,930 --> 00:38:48,930 所以,我們只是去了 控制台在底部。 703 00:38:48,930 --> 00:38:52,110 704 00:38:52,110 --> 00:38:55,970 現在,我們可以運行任何JavaScript 這裡,如JavaScript的 705 00:38:55,970 --> 00:38:58,860 文件顯示,我在js的例子。 706 00:38:58,860 --> 00:39:02,040 但是,現在讓我們來看看任務。 707 00:39:02,040 --> 00:39:04,955 我們可以運行我們的命令。 708 00:39:04,955 --> 00:39:07,830 並希望我能做出 它有點大,所以我們都可以看到。 709 00:39:07,830 --> 00:39:14,390 710 00:39:14,390 --> 00:39:18,450 >> 如果我們運行tasks.find,你會 看,這是完全一樣的代碼 711 00:39:18,450 --> 00:39:24,840 該JavaScript文件的用途 在第三步,這task.find。 712 00:39:24,840 --> 00:39:29,100 我們可以運行同樣的事情, 現在我們得到了一些奇怪的東西。 713 00:39:29,100 --> 00:39:31,050 我們如何真正得到的數據? 714 00:39:31,050 --> 00:39:34,860 好了,我們要運行這個 命令稱取。 715 00:39:34,860 --> 00:39:37,150 >> 這對於調試是非常有用的。 716 00:39:37,150 --> 00:39:41,000 你這裡是什麼 一個光標,而這是 717 00:39:41,000 --> 00:39:44,890 一個很好的方式,有流星 優化取數據。 718 00:39:44,890 --> 00:39:48,270 此光標擁有所有的功能 現場更新和刷新頁面 719 00:39:48,270 --> 00:39:49,650 當事情發生了變化。 720 00:39:49,650 --> 00:39:51,280 但它不會讓我們的數據。 721 00:39:51,280 --> 00:39:52,720 我們可以通過獲取數據。 722 00:39:52,720 --> 00:39:56,880 你看,我們有一個對象, 這就像我們曾在蒙戈, 723 00:39:56,880 --> 00:40:00,040 有ID和文字,我們把英寸 724 00:40:00,040 --> 00:40:04,200 >> 那麼,如何才能插入流星的項目? 725 00:40:04,200 --> 00:40:07,250 好了,我們只是有任務。 726 00:40:07,250 --> 00:40:09,990 然後我們就可以運行 同樣的插入命令, 727 00:40:09,990 --> 00:40:17,520 給一個字典或對象 具有相同的格式,文本 728 00:40:17,520 --> 00:40:22,340 然後我來自控制台。 729 00:40:22,340 --> 00:40:27,240 拿上面看看,因為當我 做到這一點,它顯示了在網站上 730 00:40:27,240 --> 00:40:29,660 自動。 731 00:40:29,660 --> 00:40:33,291 >> 注意,你可以把任何東西 你想在這些項目。 732 00:40:33,291 --> 00:40:35,040 它不必 有一個固定的結構。 733 00:40:35,040 --> 00:40:39,790 我可以有一個等於所述 排名第三和b等於假。 734 00:40:39,790 --> 00:40:41,600 而這一切的作品。 735 00:40:41,600 --> 00:40:46,000 我甚至可以選擇不 包括所有的文本。 736 00:40:46,000 --> 00:40:48,320 這僅僅是不推薦 但因為那時流星 737 00:40:48,320 --> 00:40:50,920 不知道要顯示的內容。 738 00:40:50,920 --> 00:40:53,110 但是在每一種情況下,我們 獲得一個ID,這是 739 00:40:53,110 --> 00:40:54,785 可以使用對象的ID。 740 00:40:54,785 --> 00:41:01,120 741 00:41:01,120 --> 00:41:03,280 >> 隨著我們繼續 第四步和第五步, 742 00:41:03,280 --> 00:41:06,870 本教程將告訴你如何說 您可以通過創建UI元素 743 00:41:06,870 --> 00:41:13,130 你知道的HTML 創建不同的任務。 744 00:41:13,130 --> 00:41:15,440 讓我們來看看第四步真的很快。 745 00:41:15,440 --> 00:41:18,290 我們會看到,我們增加 一節有關的事件。 746 00:41:18,290 --> 00:41:20,874 模板可以具有 幫手,這讓我們的數據。 747 00:41:20,874 --> 00:41:22,040 但它也可以稱之為事件。 748 00:41:22,040 --> 00:41:25,300 而這正是東西 變得很有用,因為事件 749 00:41:25,300 --> 00:41:28,590 當您點擊會發生什麼 在您的網站不同的事情。 750 00:41:28,590 --> 00:41:33,790 >> 在這裡,我們的代碼是告訴 我們添加這個事件。 751 00:41:33,790 --> 00:41:38,860 添加它,當你已經提交 一些與一流的新任務。 752 00:41:38,860 --> 00:41:41,910 你在這裡是一個CSS選擇器。 753 00:41:41,910 --> 00:41:45,870 因此,這只是尋找一​​個HTML 元素具有一流的新任務。 754 00:41:45,870 --> 00:41:47,940 它看起來的事件,如提交。 755 00:41:47,940 --> 00:41:51,050 其他活動包括: 點擊,懸停,雙擊, 756 00:41:51,050 --> 00:41:54,450 類似於您在普通HTML搞定。 757 00:41:54,450 --> 00:41:56,770 >> 現在你給它在這裡是一個函數。 758 00:41:56,770 --> 00:42:01,210 你可以有你 在該功能的代碼。 759 00:42:01,210 --> 00:42:06,360 這個功能是什麼最終得到 所謂當您提交這項新任務。 760 00:42:06,360 --> 00:42:12,170 讓我們來看看HTML只是讓我們 明白這是什麼新的任務。 761 00:42:12,170 --> 00:42:15,570 我們在這裡增加了一個表格 與一流的新任務。 762 00:42:15,570 --> 00:42:19,880 並且它有一個輸入端,取文本。 763 00:42:19,880 --> 00:42:22,605 而這正是我們 將增加我們的新任務。 764 00:42:22,605 --> 00:42:25,520 765 00:42:25,520 --> 00:42:29,780 >> 讓我們在運行第四步 網站上看到是什麼樣子。 766 00:42:29,780 --> 00:42:32,710 我們可以退出先出 在MongoDB中,我們有 767 00:42:32,710 --> 00:42:35,300 從我們以往的 例如與控制C. 768 00:42:35,300 --> 00:42:37,690 讓我們把它變成 步驟4目錄。 769 00:42:37,690 --> 00:42:41,000 770 00:42:41,000 --> 00:42:42,920 我們將再次運行流星 啟動服務器。 771 00:42:42,920 --> 00:42:46,850 772 00:42:46,850 --> 00:42:50,510 不幸的是,我有流星 在另一個終端上運行。 773 00:42:50,510 --> 00:42:53,080 所以我只是要 確保這一關。 774 00:42:53,080 --> 00:43:01,805 讓我們離開這一點,並改變 第四部分,第四步。 775 00:43:01,805 --> 00:43:02,305 好不好。 776 00:43:02,305 --> 00:43:11,220 777 00:43:11,220 --> 00:43:13,250 >> 現在我們的流星代碼運行。 778 00:43:13,250 --> 00:43:19,480 你可以看到,它更新,而不 我們甚至無需刷新頁面。 779 00:43:19,480 --> 00:43:24,410 現在這裡有什麼改變的是 我們沒有任何任務, 780 00:43:24,410 --> 00:43:29,530 但我們有一個表格在這裡,這 文本框,增加我們的新任務。 781 00:43:29,530 --> 00:43:31,550 我們可以在這裡鍵入我們的任務。 782 00:43:31,550 --> 00:43:34,564 我來自HTML頁面。 783 00:43:34,564 --> 00:43:36,105 當我按下Enter鍵,它得到了提交。 784 00:43:36,105 --> 00:43:39,180 785 00:43:39,180 --> 00:43:44,540 >> 我們可以看到發生了什麼的 由JavaScript代碼中定義。 786 00:43:44,540 --> 00:43:49,930 這是什麼功能做的是 從形式上採取文字, 787 00:43:49,930 --> 00:43:53,680 然後就被稱為tasks.insert, 像我們一樣在控制​​台中。 788 00:43:53,680 --> 00:43:56,410 他們也選擇了加createdAt日期。 789 00:43:56,410 --> 00:43:59,840 這是你會如何 指定當前時刻。 790 00:43:59,840 --> 00:44:03,220 之後,它通過使清除的形式 確保值是空字符串。 791 00:44:03,220 --> 00:44:06,550 >> 然後調用返回false來 確保沒有什麼事情發生。 792 00:44:06,550 --> 00:44:10,350 當您從返回false 活動的形式,即停止執行。 793 00:44:10,350 --> 00:44:14,520 說形式有一個動作, 就像提交到PHP頁面。 794 00:44:14,520 --> 00:44:16,980 如果你還沒有回來 假的,你會返回true。 795 00:44:16,980 --> 00:44:18,500 這將最終使這一請求。 796 00:44:18,500 --> 00:44:20,590 假攔截它, 它停在那裡。 797 00:44:20,590 --> 00:44:23,510 798 00:44:23,510 --> 00:44:28,610 >> 所以這是關於一個小演示 流星是如何工作的,我們已經 799 00:44:28,610 --> 00:44:30,980 一直跟隨本教程一段時間。 800 00:44:30,980 --> 00:44:33,560 你可以請隨時 自由地繼續這樣做。 801 00:44:33,560 --> 00:44:37,760 有豐富的資源, 和教程實際上只是 802 00:44:37,760 --> 00:44:40,400 很不錯的關於解釋 這是怎麼回事。 803 00:44:40,400 --> 00:44:44,362 我現在要告訴你,在 我們已經離開了幾分鐘, 804 00:44:44,362 --> 00:44:46,320 什麼是一些 流星冷卻器的特點, 805 00:44:46,320 --> 00:44:48,772 什麼是一些 更有用的包。 806 00:44:48,772 --> 00:44:51,730 一個關於流星的偉大的事情 是,你有一個包系統。 807 00:44:51,730 --> 00:44:55,620 您可以輕鬆地將代碼 許多成千上萬的開發者 808 00:44:55,620 --> 00:44:58,840 采寫全球 到流星的項目。 809 00:44:58,840 --> 00:45:02,410 這方面的一個例子是,你可能 做的教程,其中第九步 810 00:45:02,410 --> 00:45:07,435 您要添加帳戶 您流星的項目。 811 00:45:07,435 --> 00:45:10,010 812 00:45:10,010 --> 00:45:13,690 如果我們有一個CS50 PHP 項目中,我們將有 813 00:45:13,690 --> 00:45:17,810 依靠框架 或者我們自​​己的代碼,以使 814 00:45:17,810 --> 00:45:20,820 確保我們安全地處理 密碼和用戶名 815 00:45:20,820 --> 00:45:23,120 並存儲在數據庫 和所有的這一點。 816 00:45:23,120 --> 00:45:25,670 >> 原來,流星有一些 包為你做的, 817 00:45:25,670 --> 00:45:29,160 而做到這一點很容易。 818 00:45:29,160 --> 00:45:31,950 我們所能做的就是添加了幾包。 819 00:45:31,950 --> 00:45:37,450 因此,讓我們做正確的 現在在我們的控制台。 820 00:45:37,450 --> 00:45:42,460 我要退出該項目, 現在進入簡單待辦事項。 821 00:45:42,460 --> 00:45:47,450 822 00:45:47,450 --> 00:45:50,050 現在,簡單待辦事項是 該項目你 823 00:45:50,050 --> 00:45:53,500 將正在做後 與步驟11或步驟12中, 824 00:45:53,500 --> 00:45:55,250 在本教程結束。 825 00:45:55,250 --> 00:45:58,642 讓我們再看一下,看看 有哪些不同的特點,我們有。 826 00:45:58,642 --> 00:46:01,610 我們只是要確保它的運行。 827 00:46:01,610 --> 00:46:04,400 有時,它需要一段時間 刷新,但在這裡它是。 828 00:46:04,400 --> 00:46:09,710 >> 我們有選擇隱藏 完成任務,我們可以登錄。 829 00:46:09,710 --> 00:46:11,770 這是與完成 流星包。 830 00:46:11,770 --> 00:46:12,270 這很棒。 831 00:46:12,270 --> 00:46:14,910 現在,我們已經用戶名 和密碼請登錄。 832 00:46:14,910 --> 00:46:19,170 但是,如果我們想添加 另一種登錄機制? 833 00:46:19,170 --> 00:46:22,560 比方說,我想記錄 在我的流星賬戶。 834 00:46:22,560 --> 00:46:27,270 我要運行流星加,而這 是語法加包。 835 00:46:27,270 --> 00:46:32,160 我可以說的帳戶,並accounts.meteor。 836 00:46:32,160 --> 00:46:35,720 這將現在發現 包並加載它。 837 00:46:35,720 --> 00:46:40,480 你可以看到,我沒有 找到了合適的包名。 838 00:46:40,480 --> 00:46:42,820 >> 那麼,你如何了解包? 839 00:46:42,820 --> 00:46:46,380 那麼有一個偉大的網站,做 可用的流星人, 840 00:46:46,380 --> 00:46:47,780 所謂atmospherejs.com。 841 00:46:47,780 --> 00:46:52,520 Atmospherejs,一個字,點 COM,是一個偉大的庫 842 00:46:52,520 --> 00:46:57,660 尋找所有的流星 包存儲庫中。 843 00:46:57,660 --> 00:47:05,140 我可以搜索帳戶,然後 它會告訴我所有的東西有關, 844 00:47:05,140 --> 00:47:07,320 所有包與該帳戶的名稱。 845 00:47:07,320 --> 00:47:10,180 846 00:47:10,180 --> 00:47:13,270 >> 而加載,我們可以嘗試 加入一些其他的包。 847 00:47:13,270 --> 00:47:19,380 也許流星包不工作 現在,我可以添加Facebook的。 848 00:47:19,380 --> 00:47:22,860 849 00:47:22,860 --> 00:47:27,190 我可以添加的帳戶,然後 再次運行流星項目。 850 00:47:27,190 --> 00:47:33,260 851 00:47:33,260 --> 00:47:36,900 一旦開始,讓我們來看看 什麼網站上發生變化。 852 00:47:36,900 --> 00:47:40,010 853 00:47:40,010 --> 00:47:44,580 您可以see--我可能 要在這裡刷新。 854 00:47:44,580 --> 00:47:47,320 >> 我有一個按鈕, 配置Facebook登錄。 855 00:47:47,320 --> 00:47:49,765 在這裡,我把所有 說明流星 856 00:47:49,765 --> 00:47:52,960 已經為你準備的 建立一個Facebook應用程序。 857 00:47:52,960 --> 00:47:58,990 你可以使用 信息的添加您的ID。 858 00:47:58,990 --> 00:48:04,130 一旦這樣做了,你就會有 Facebook登錄在你的應用程序工作。 859 00:48:04,130 --> 00:48:08,559 >> 我只是要得到 一個應用程序ID和秘密, 860 00:48:08,559 --> 00:48:10,100 只是為了顯示你如何可能會奏效。 861 00:48:10,100 --> 00:48:16,000 862 00:48:16,000 --> 00:48:20,360 您將需要一個Facebook帳戶 使用Facebook開發者選項。 863 00:48:20,360 --> 00:48:31,160 864 00:48:31,160 --> 00:48:35,290 讓我很快找到 流星密鑰所必需。 865 00:48:35,290 --> 00:48:46,994 866 00:48:46,994 --> 00:48:49,160 我還有一個流星的項目 我要去使用, 867 00:48:49,160 --> 00:48:55,590 而我只是要帶 鑰匙從該文件。 868 00:48:55,590 --> 00:49:14,410 869 00:49:14,410 --> 00:49:20,930 >> 一旦我找到它,我就可以 這些鍵複製到我的Facebook。 870 00:49:20,930 --> 00:49:23,489 因此,這裡是一個關鍵。 871 00:49:23,489 --> 00:49:24,280 這是秘密。 872 00:49:24,280 --> 00:49:26,071 你不應該 與人分享這些。 873 00:49:26,071 --> 00:49:28,870 874 00:49:28,870 --> 00:49:30,910 然後你給它您的應用程序的秘密。 875 00:49:30,910 --> 00:49:33,560 這是如此的Facebook 知道你是你。 876 00:49:33,560 --> 00:49:37,630 877 00:49:37,630 --> 00:49:39,080 你保存配置。 878 00:49:39,080 --> 00:49:45,160 879 00:49:45,160 --> 00:49:48,640 >> 我覺得在這個過程中我 已經停止我的流星應用程序。 880 00:49:48,640 --> 00:49:52,290 所以,我只是想 確保它仍然存在。 881 00:49:52,290 --> 00:49:54,962 882 00:49:54,962 --> 00:49:58,610 OK,讓我們確保我們的流星服務器 運行,以便該網頁正在運行。 883 00:49:58,610 --> 00:50:02,440 請注意,如果我們停止流星 服務器,頁面仍然存在。 884 00:50:02,440 --> 00:50:04,700 它只是不會再更新。 885 00:50:04,700 --> 00:50:10,290 流星服務器是必要的 為確保該頁面是活的。 886 00:50:10,290 --> 00:50:14,050 >> OK,我已經提交了,現在 我可以簽署旅遊。 887 00:50:14,050 --> 00:50:17,400 現在它只是一個問題 有一個Facebook的彈出 888 00:50:17,400 --> 00:50:21,710 並把您的帳戶 在信息和記錄。 889 00:50:21,710 --> 00:50:24,520 890 00:50:24,520 --> 00:50:27,930 一旦你做到這一點,Facebook的可能 老馬你一些更安全。 891 00:50:27,930 --> 00:50:29,810 所以,我們就就此打住。 892 00:50:29,810 --> 00:50:34,110 問題是,當你完成 就這樣,你就會有Facebook登錄。 893 00:50:34,110 --> 00:50:37,850 >> 流星有一堆 其他包為好。 894 00:50:37,850 --> 00:50:39,200 您可以通過Google+登錄。 895 00:50:39,200 --> 00:50:40,500 您可以GitHub上登錄。 896 00:50:40,500 --> 00:50:42,170 您可以與Twitter登錄。 897 00:50:42,170 --> 00:50:44,870 或者,如果你搜索,你會 發現很多其他的事情 898 00:50:44,870 --> 00:50:49,170 像Meetup網站,LinkedIn, 和流星開發。 899 00:50:49,170 --> 00:50:53,100 所以流星開發是 包我一直在尋找。 900 00:50:53,100 --> 00:50:56,170 流星添加帳戶,流星開發商。 901 00:50:56,170 --> 00:51:06,192 902 00:51:06,192 --> 00:51:07,900 在此期間,我 也想推薦 903 00:51:07,900 --> 00:51:11,340 一些其他的包為您的項目。 904 00:51:11,340 --> 00:51:14,670 它可能證明是有益的 包括jQuery的包。 905 00:51:14,670 --> 00:51:17,909 這使您可以使用 jQuery的在你的客戶。 906 00:51:17,909 --> 00:51:21,200 你可能只是做一個路線, 流星會確保你最新的 907 00:51:21,200 --> 00:51:21,825 jQuery的。 908 00:51:21,825 --> 00:51:24,330 909 00:51:24,330 --> 00:51:27,450 我還建議休斯頓:管理員。 910 00:51:27,450 --> 00:51:31,550 >> 這有點像一個phpMyAdmin的 這種工具為您的MongoDB。 911 00:51:31,550 --> 00:51:33,890 這使您可以編輯 您的數據很容易 912 00:51:33,890 --> 00:51:37,950 而不必去到蒙戈外殼, 就像我早先在研討會上做了。 913 00:51:37,950 --> 00:51:43,160 914 00:51:43,160 --> 00:51:47,101 所以,現在說的運行,讓我們運行 再次流星,看看我們能做些什麼。 915 00:51:47,101 --> 00:51:56,240 916 00:51:56,240 --> 00:52:00,720 >> 您會注意到添加一些包 可能有他們提出了一些警告。 917 00:52:00,720 --> 00:52:02,720 您將不必擔心 關於與休斯敦。 918 00:52:02,720 --> 00:52:06,040 919 00:52:06,040 --> 00:52:10,810 所以,我們現在可以有選擇 配置流星管理。 920 00:52:10,810 --> 00:52:15,080 他們給你方向 如果你想設置了起來。 921 00:52:15,080 --> 00:52:17,750 922 00:52:17,750 --> 00:52:20,440 >> 我們也可以現在去/管理。 923 00:52:20,440 --> 00:52:23,280 這是贊助商 由休斯頓包。 924 00:52:23,280 --> 00:52:27,470 這是流星管理界面。 925 00:52:27,470 --> 00:52:30,660 你只需創建一個 管理員帳戶,像這樣。 926 00:52:30,660 --> 00:52:38,150 如果你刷新頁面,則可能 有一些收藏品顯示出來。 927 00:52:38,150 --> 00:52:40,980 928 00:52:40,980 --> 00:52:43,460 >> 這是一個非常有用的工具, 我強烈推薦它。 929 00:52:43,460 --> 00:52:46,717 930 00:52:46,717 --> 00:52:49,050 你可以看到,因為 休斯頓是給一些錯誤, 931 00:52:49,050 --> 00:52:52,330 我們沒有任何收藏 顯示了現在。 932 00:52:52,330 --> 00:52:56,800 你會用火箭的方式是 確保這一功能得到 933 00:52:56,800 --> 00:52:58,860 叫你簡單待辦事項。 934 00:52:58,860 --> 00:53:01,370 所以火箭不 知道我的任務。 935 00:53:01,370 --> 00:53:04,490 >> 我們建立了一個蒙戈 收集所謂的任務。 936 00:53:04,490 --> 00:53:11,390 讓我們進入簡單待辦事項和公正 確保在JavaScript中, 937 00:53:11,390 --> 00:53:16,295 我們增加了任務,我們的產品系列。 938 00:53:16,295 --> 00:53:19,340 939 00:53:19,340 --> 00:53:25,670 現在,我們已經保存,它的建設 該應用程序,令人耳目一新。 940 00:53:25,670 --> 00:53:26,750 讓我們來看看。 941 00:53:26,750 --> 00:53:29,090 現在我們有一些任務。 942 00:53:29,090 --> 00:53:32,630 我們可以添加一些新的任務。 943 00:53:32,630 --> 00:53:35,840 但是,如果我們想要添加的任務, 讓我們做它的應用程序本身。 944 00:53:35,840 --> 00:53:39,660 945 00:53:39,660 --> 00:53:41,050 >> 現在,我們可以添加一些數據。 946 00:53:41,050 --> 00:53:53,410 嗨,這是一個任務。 947 00:53:53,410 --> 00:53:57,080 這似乎有點怪 我們沒有看到任何任務。 948 00:53:57,080 --> 00:54:00,290 949 00:54:00,290 --> 00:54:05,260 我們可能要檢查,如果我們有任何 這裡的錯誤,或者其他地方。 950 00:54:05,260 --> 00:54:08,810 951 00:54:08,810 --> 00:54:20,260 如果我們去管理,這似乎有些奇怪。 952 00:54:20,260 --> 00:54:24,080 如果你拉庫 本次研討會後, 953 00:54:24,080 --> 00:54:27,580 我會確保 簡單待辦事項工程與休斯敦。 954 00:54:27,580 --> 00:54:30,370 不幸的是,它似乎並沒有 是在這個非常時刻的工作。 955 00:54:30,370 --> 00:54:34,810 956 00:54:34,810 --> 00:54:37,640 >> 是否有任何其他的問題嗎? 957 00:54:37,640 --> 00:54:41,800 休斯頓通常是 工具,工作得非常好。 958 00:54:41,800 --> 00:54:44,510 休斯頓特別是有點 比其他的buggier, 959 00:54:44,510 --> 00:54:49,470 但我推薦它時,它的工作原理。 960 00:54:49,470 --> 00:54:50,080 是啊。 961 00:54:50,080 --> 00:54:52,395 >> 聽眾:你能做些什麼 與Facebook包 962 00:54:52,395 --> 00:54:54,270 一旦用戶已登錄 在他們的Facebook? 963 00:54:54,270 --> 00:54:55,978 >> ROGER ZURAWICKI:一旦 用戶的登錄, 964 00:54:55,978 --> 00:54:59,540 您可以撥打電話到Facebook的API。 965 00:54:59,540 --> 00:55:02,890 很多擺在更加 如何Facebook的開放他們的API。 966 00:55:02,890 --> 00:55:05,120 流星,請確保您 有連接。 967 00:55:05,120 --> 00:55:09,300 但在那之後一切問題 學習如何使用Facebook的API。 968 00:55:09,300 --> 00:55:10,216 觀眾:[聽不清]。 969 00:55:10,216 --> 00:55:17,756 970 00:55:17,756 --> 00:55:18,880 ROGER ZURAWICKI:好的。 971 00:55:18,880 --> 00:55:21,670 非常感謝您的 這CS50研討會流星。 972 00:55:21,670 --> 00:55:24,060 如果你有任何問題, 你可以給我發電子郵件 973 00:55:24,060 --> 00:55:28,319 我的電子郵件地址 下面列出了研討會。 974 00:55:28,319 --> 00:55:30,110 我會很高興的 回答你的問題。 975 00:55:30,110 --> 00:55:33,020 我也可以在 CS50黑客馬拉松應 976 00:55:33,020 --> 00:55:35,550 你需要與你的流星的項目提供幫助。 977 00:55:35,550 --> 00:55:37,650 感謝您的收看。 978 00:55:37,650 --> 00:55:38,816