LESSON-01 · 3 個自學主題
建立可預覽、可除錯的前端檔案結構
服務型商家的網站剛開始製作,今天只建立一個可以預覽與除錯的三檔案小專案;圖片素材先不加入,避免把尚未教的路徑問題混在一起。
180 分鐘主課+依學習成果逐項完成的自主學習
學生實作包 · 28 章
每章保留 180 分鐘主課,再依學習成果自主完成 micro Lab、整合 Lab 與驗收證據;進度以能做到什麼為準,不以倒數計時。
LESSON-23–28 · 連續專案
六章共用同一份鐵刻運動專案:商品、localStorage 購物車、訂單、聯絡表單、GAS 測試契約、server-authoritative totals 與 release smoke。
預設 endpoint 空白時只跑 local mock,不送出 POST;真實 GAS 與 Sheet 只能使用測試部署及測試資料。
Solution 是參考答案;各章卡片可直接進入 examples/supplement/index.html 完成自主學習。
LESSON-01 · 3 個自學主題
服務型商家的網站剛開始製作,今天只建立一個可以預覽與除錯的三檔案小專案;圖片素材先不加入,避免把尚未教的路徑問題混在一起。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-02 · 4 個自學主題
客戶只有一段商家介紹與服務資訊,先用兩個 HTML 檔案建立能閱讀、能前往下一頁的首頁骨架;本堂不加入 CSS、JavaScript 或框架。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-03 · 4 個自學主題
商家不只需要首頁,訪客還要能進入服務、關於與聯絡頁並留下需求。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-04 · 4 個自學主題
首頁 HTML 已經有內容,但品牌色、卡片與 CTA 尚未套用;需要精準指定要改哪一類元素。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-05 · 4 個自學主題
先在 index.html 建立三張服務卡片,再觀察 padding、border 與 width 如何改變實際盒子;最後用 box-sizing 修正 390px 手機畫面的水平溢位。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-06 · 4 個自學主題
商家已有一張服務卡片,但標題、說明文字、按鈕與狀態提示還沒有一致的閱讀階層;本堂只處理這張卡片的內容呈現,不延伸到多頁、框架或版面排列。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-07 · 4 個自學主題
品牌樣式已完成,但導覽與服務摘要仍像垂直清單,需要在不同寬度下保持可用排列。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-08 · 4 個自學主題
單一區塊都已會排版,現在要把它們組成訪客一進站就能理解並採取行動的首頁。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-09 · 4 個自學主題
首頁服務資訊開始增加,單純 Flexbox 不容易表達主卡片與側邊資訊的二維關係。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-10 · 4 個自學主題
服務商家的訪客可能用手機、平板或桌機進站,固定桌機欄位會讓手機操作困難。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-11 · 4 個自學主題
商家希望在服務頁標出推薦方案,並讓聯絡入口在長頁面中保持可找到。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-12 · 4 個自學主題
聯絡頁看似完成,但使用鍵盤或填寫錯誤時,訪客不一定知道目前焦點與問題在哪裡。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-13 · 4 個自學主題
服務型網站的 HTML 已經能顯示內容,但按鈕和卡片的狀態切換太突然;本堂只處理 CSS 狀態變化、簡短 animation 與使用者的減少動態偏好。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-14 · 4 個自學主題
服務型網站需要根據訪客操作顯示一段清楚的服務資訊;本堂先用原生 JavaScript 建立最小的輸入、處理與輸出流程。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-15 · 4 個自學主題
商家不只一項服務,資料若散落在多個變數中,新增方案與篩選都會變得困難。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-16 · 4 個自學主題
服務資料已經整理好,現在要讓頁面依資料產生卡片,新增資料時不用手動複製 HTML。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-17 · 4 個自學主題
多頁網站在手機上需要可開關導覽,FAQ 也要能讓訪客逐項展開而不重新整理頁面;本堂先用一個入口頁和一個目的頁,讓每個狀態都能在瀏覽器中看見。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-18 · 4 個自學主題
聯絡表單不能直接刷新頁面消失,訪客需要知道送出中、成功或失敗的結果。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-19 · 4 個自學主題
網站先需要一個可由瀏覽器直接開啟的 Vue 入口;本堂暫時只把靜態服務介紹交給 Vue 渲染,不先處理互動狀態。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-20 · 4 個自學主題
服務資料需要依搜尋或分類變化,手動操作 DOM 會讓畫面與資料逐漸不同步。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-21 · 4 個自學主題
服務卡片越來越多,若全部寫在同一個 template,修改一張卡片容易影響整個頁面。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-22 · 4 個自學主題
聯絡表單需要同時處理輸入、載入、成功、失敗與重試,狀態若沒有規則會讓按鈕卡住。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-23 · 4 個自學主題
第 23–28 章共用同一個 project/e-commerce;本堂先固定頁面、使用者任務、商品/訂單/聯絡資料欄位與逐章驗收證據,只做規劃,不寫 fetch、不連 GAS/Sheet、不部署。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-24 · 4 個自學主題
資料契約已固定,現在於 project/e-commerce 建立六頁共用導覽與首頁;黃色負責品牌與主要行動、鐵灰負責文字與表面,只用少量紅色標示特價。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-25 · 4 個自學主題
品牌 shell 已完成;本堂只使用本地商品陣列、localStorage 與 mock 回應,完整走過選商品、購物車、填訂單與聯絡流程,嚴禁 fetch、GAS endpoint 或 Sheet 寫入。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-26 · 4 個自學主題
離線流程已能操作,現在用一個 Apps Script Web App 依 action 分流:doGet 讀商品,doPost 接訂單或聯絡;前端與 GAS 共用固定欄位、JSON 回應與測試 endpoint,且不把 Spreadsheet ID 或秘密放前端。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-27 · 4 個自學主題
API 契約已接通;本堂由 GAS 以 Products Sheet 的有效價格重新計算商品總額、運費與訂單總額,再以 LockService 和 submissionId 防止重送,並讓前端呈現 idle/loading/success/error/timeout。
180 分鐘主課+依學習成果逐項完成的自主學習
LESSON-28 · 4 個自學主題
六章功能已完成;本堂只整理唯一可部署 production artifact,驗證六頁、商品圖片、購物車、兩種表單、GAS 設定說明、SEO、390px 與鍵盤路徑;六頁 canonical/OG 與 robots/sitemap 先保留一致 placeholder,部署前須同批替換,不建立或更新任何遠端部署。
180 分鐘主課+依學習成果逐項完成的自主學習