var text = ""; text = text + x; 請問一下這個的意義是什麼
恭喜你完成了一系列酷炫的元件 Quasar 是業界最頂尖、好用的 UI 元件包之一 你在這系列作業中,也順便學習了此元件包的用法,這在實務上非常有幫助 你甚至親手製作了其中一些基本的元件,讓你大致了解元件包背後的製作原理 像這些最基礎的 UI 元件,因為通用性很高、很常被重複用到、在多個地方到處使用,所以很適合製作成元件 --- 但是,在實務上,通常開發一個頁面,就製作一個 vue 檔案即可。除了基礎 UI 元件之外,並不會額外製作多少元件 因為頁面上很多看起來像元件的東西,其實就算拆出來,別的頁面也用不到、或根本無法使用 這種情況,其實也不用刻意要拆成元件,因為意義不大,說不定還會變更亂。切記:不需要為了元件化而元件化 當你發現頁面真的有點太複雜、你明顯感受到拆成多個元件會比較好維護的時候,再拆成元件就可以了 --- 翻閱 Vue 官方文件,你會發現 `Components In-Depth` 這個段落,你幾乎通通讀完了 有些我認為非必要、沒那麼常用的段落,就沒有指定讓你閱讀。你如果好奇的話,就自行把官網剩下的頁面翻一翻吧 必要的元件觀念,你都已經知道了,這些已足夠讓你參與團隊合作、與團隊一起開發應用程式了 但是在真正大型的專案,還需要引入一些進階觀念、生態系工具 這些會在後續的課程提到! --- 消化、研究完本課程之後,我認為你已經具備入行前端工程師的基礎能力了! 急著上班、找工作的同學,請參考我寫的文章: **給寫完 JavaScript 系列九的同學們:求職前的準備&簡易指南** https://codelove.tw/@howtomakeaturn/post/k31dYx 再次恭喜你順利完成本系列轉職前端課程,祝你求職順利! 有問題可以多多上來發問!
## 課程目標 - 學習開發狀態複雜的 vue 元件 ## 課程內容 前面的課程中,元件的狀態很單純,數量也很少 但是有些元件,雖然對外溝通的狀態很少 但是在元件內部,其實需要維持額外的多個狀態,才能使用 比方說「顏色選擇器」類型的元件:雖然對外就一個代表色碼的字串而已,但在內部需要不少狀態來維持 ## 課後作業 這一課作業,請先看一下 Color Picker 元件的用法 https://quasar.dev/vue-components/color-picker --- 請使用官方的元件試玩工具:Vue SFC Playground https://sfc.vuejs.org/ - 請建立 `MyColor.vue` 元件,並支援下列功能 - `v-model` 能夠設定色碼、取得色碼,格式支援 HEX 即可,例如:經典藍 `#34568b` - 不用支援各種花俏的顏色選擇面板,就做 RGB 三捲軸就好了:使用 `<input type="range">` 製作三個可以拉動的捲軸,分別代表紅色、綠色、藍色的比例 - 請自行搜尋 `hex to rgb javascript` `rgb to hex javascript` 研究 hex 色碼與 rgb 色碼如何轉換 完成之後,請在 `App.vue` 之中匯入此元件,並用多個範例證明,有完成上述規格 做出以上功能,你就完成這次的課程目標了!
## 課程目標 - 學習用外部狀態管理 vue 元件 ## 課程內容 前面的課程中,元件的狀態很單純,都是匯入之後直接使用 但是有些元件匯入之後,一開始在畫面上是不顯示的 比方說視窗類型的元件:這種元件需要額外有一個狀態,來管理它是否顯示 ## 課後作業 這一課作業,請先看一下 Dialog 視窗元件的用法 https://quasar.dev/vue-components/dialog --- 請使用官方的元件試玩工具:Vue SFC Playground https://sfc.vuejs.org/ - 請建立 `MyDialog.vue` 元件,並支援下列功能 - `v-model` 能夠管理視窗是否顯示 - `預設的 slot` 能夠放入視窗內容 完成之後,請在 `App.vue` 之中匯入此元件,並用多個範例證明,有完成上述規格 做出以上功能,你就完成這次的課程目標了!
## 課程目標 - 學習 vue 的 slots ## 課程內容 來學一下 slots 的用法 - https://vuejs.org/guide/components/slots.html ## 課後作業 這一課作業,請先看一下 Banner 公告元件的用法 https://quasar.dev/vue-components/banner --- 請使用官方的元件試玩工具:Vue SFC Playground https://sfc.vuejs.org/ - 請建立 `MyBanner.vue` 元件,並支援下列功能 - `預設的 slot` 能夠放入公告內容 - `action slot` 能夠在下一排最右側放入額外內容 - `rounded` 樣式 完成之後,請在 `App.vue` 之中匯入此元件,並用多個範例證明,有完成上述規格 做出以上功能,你就完成這次的課程目標了!
## 課程目標 - 學習 vue 的 v-model ## 課程內容 來學一下 v-model 的用法 - https://vuejs.org/guide/components/v-model.html 老話一句,不要把這功能想得太神奇 這只是一種 props + events 的縮寫而已 功能完全一樣,只是讓元件更方便使用而已 如果真的很不喜歡,實務上完全不用,其實也不會怎樣 ## 課後作業 這一課作業,請先看一下 Input 輸入元件的用法 https://quasar.dev/vue-components/input --- 請使用官方的元件試玩工具:Vue SFC Playground https://sfc.vuejs.org/ - 請建立 `MyInput.vue` 元件,並支援下列功能 - `v-model` 能夠設定值、取得值 - `label` 能夠設定欄位名稱(可以不用像 Quasar 動畫那樣華麗,就簡單顯示在旁邊即可) - `filled` 樣式 - `outlined` 樣式 完成之後,請在 `App.vue` 之中匯入此元件,並用多個範例證明,有完成上述規格 做出以上功能,你就完成這次的課程目標了!
## 課程目標 - 學習 vue 的 events ## 課程內容 來學一下怎麼替元件設計事件 - https://vuejs.org/guide/components/events.html ## 課後作業 這一課作業,請先看一下 Button 按鈕元件的用法 https://quasar.dev/vue-components/button --- 請使用官方的元件試玩工具:Vue SFC Playground https://sfc.vuejs.org/ - 請建立 `MyButton.vue` 元件,並支援下列功能 - `color` 能夠設定背景顏色 - `text-color` 能夠設定文字顏色 - `label` 能夠設定文字內容 - `size` 能夠設定按鈕大小 - `round` 樣式 - `square` 樣式 - `@click` 能夠設定點擊後的任務 完成之後,請在 `App.vue` 之中匯入此元件,並用多個範例證明,有完成上述規格 做出以上功能,你就完成這次的課程目標了!
## 課程目標 - 學習 vue 的 props ## 課程內容 來學一下怎麼傳參數到元件裡面 - https://vuejs.org/guide/components/props.html 順帶一提,在實務中,我個人是從來不寫 Prop Validation 的 我不去寫 Runtime Type Checks 那些,因為我覺得很麻煩、很花時間 當然,在很多人眼裡,我這種習慣很糟糕 我有我的理由,不過嚴重超出本課程度,未來有機會再談吧 ## 課後作業 在第二課~第七課的作業,我們要研習一款叫做 Quasar Framework 的工具 這是一個極度強大的 vue 元件工具,功能非常豐富、好用 我們每一課的作業,都要試著親自做出類似 Quasar 中的元件 (沒辦法做到像 Quasar 那麼強大,我們只要實作部分功能就好) 這一課作業,請先看一下 Badge 徽章元件的用法 https://quasar.dev/vue-components/badge --- 請使用官方的元件試玩工具:Vue SFC Playground https://sfc.vuejs.org/ - 請建立 `MyBadge.vue` 元件,並支援下列功能 - `color` 能夠設定背景顏色 - `text-color` 能夠設定文字顏色 - `label` 能夠設定文字內容 - `rounded` 樣式 完成之後,請在 `App.vue` 之中匯入此元件,並用多個範例證明,有完成上述規格 做出以上功能,你就完成這次的課程目標了!
## 課程目標 - 能夠運行 Vue 元件 ## 課程內容 我們一樣讀官網文件就好 先來讀元件基本觀念 https://vuejs.org/guide/essentials/component-basics.html 再來讀註冊元件的方法 https://vuejs.org/guide/components/registration.html 再來讀元件的檔案格式 https://vuejs.org/guide/scaling-up/sfc.html 我鼓勵你習慣去讀英文,但實在不行就讀中文沒關係 https://cn.vuejs.org/guide/essentials/component-basics.html --- 在我的課程中反覆說過很多次 官網文件中各種內容很多,大部份看不懂沒關係,稍微有個印象就好 很多內容學了,其實根本實際上也很少用到 留個印象,遇到問題大概知道去哪翻閱就可以 整個程式設計師生涯,就用這種態度即可,沒問題的 --- 很多時候,甚至一知半解,也沒關係,根本不重要 舉個例,官網有時候會這樣寫 ``` <ButtonCounter /> ``` 有時候會這樣寫 ``` <button-counter></button-counter> ``` 官網有說明,分別在什麼時候,建議哪種寫法比較好 老實說,那些說明,連我都看不太懂,我也不認同官網的建議 我建議你就隨便寫,能跑就可以了 上過我前面課程的話就知道,我對 Vue 的許多設計細節,充滿意見、不認同 但是這個行業就是這樣,大家都充滿主觀看法,工具本身也充滿主觀看法 這些很正常,並不妨礙你成為一個專業的程式設計師 反正,框架的背後,就是會轉換成你在系列一~六學過的那些:DOM 操作、事件處理、狀態管理,就這樣而已 ## 課後作業 請使用官方的元件試玩工具:Vue SFC Playground https://sfc.vuejs.org/ 這一課我們來試著匯入元件就好 - 請建立 `Header.vue` `Main.vue` `Footer.vue` 三個元件 - 元件內容分別顯示 `I am header!` `I am main!` `I am footer!` 就好 - 在 `App.vue` 之中匯入以上元件 做出以上功能,你就完成這次的課程目標了!
* [第1課 ── 碼表應用程式](https://replit.com/@birdiewu/Ma-Biao-Ying-Yong-Cheng-Shi-online-stopwatch?v=1) * [第2課 ── 筆記應用程式](https://replit.com/@birdiewu/Bi-Ji-Ying-Yong-Cheng-Shi-online-notepad?v=1) * [第3課 ── 分帳應用程式](https://replit.com/@birdiewu/Fen-Zhang-Ying-Yong-Cheng-Shi-online-split-the-bill?v=1) * [第4課 ── 行事曆應用程式](https://replit.com/@birdiewu/Xing-Shi-Li-Ying-Yong-Cheng-Shi-online-calendar?v=1) * [第5課 ── 體重追蹤應用程式](https://replit.com/@birdiewu/Ti-Zhong-Zhui-Zong-Ying-Yong-Cheng-Shi-online-weight-tracker?v=1) 備註:如果第五課卡關,說不定你遇到跟我一樣的問題,可以參考[這裡的討論串](https://codelove.tw/@birdie2019/post/Ja69K3) * [第6課 ── 天氣查詢應用程式](https://replit.com/@birdiewu/Tian-Qi-Cha-Xun-Ying-Yong-Cheng-Shi-weather-in-taiwan?v=1) * [第7課 ── 國家資訊與地圖應用程式](https://replit.com/@birdiewu/Guo-Jia-Zi-Xun-Yu-Di-Tu-Ying-Yong-Cheng-Shi-world-map?v=1) 心得分享: JavaScript第八系列的作業跟前七個系列相比真的有挑戰性和困難度,此系列讓我進入到學習的陣痛期,不習慣、沒自信地摸索著,在網路上東看看西看看方法,文件重複看了好多次,code也拼拼湊湊完成每個作業的規格,遇到卡關的問題學著自己解決(除了第五課的問題外,那邊卡關兩天,最後終於揮白旗XD),想想有什麼辦法可以做或可以找哪方面的資料,我認為自己不是很聰明和邏輯好的人,剛開始覺得作業規格條件好困難,一直出現卡關的問題,現在回頭看其實我都挑戰完成了欸!雖然回去翻作業看還是有小瑕疵和待優化的地方,但還是恭喜自己終於完成了! _(:з」∠)_
您好,請問幾個問題。 1.為什麼我使用position:relative,網頁會出現很大的空白,我該如何解決。 2.使用絕對位置,我該如何讓我的網頁隨著比例縮放。 問題1 : ![](https://i.imgur.com/wzXvqGk.jpg) 問題2: ![](https://i.imgur.com/4a7OA6u.jpg) ![](https://i.imgur.com/BzUIBdJ.jpg) 這是網頁全開的時候 ![](https://i.imgur.com/YGNQAfx.jpg) HTML: ``` <!DOCTYPE html> <html> <head> <meta charset = "UTF-8"> <title>佳加安全帽</title> <link rel = "stylesheet" href = "style.css"> </head> <body class = "page"> <div class = "navbar"> <div class="container"> <div class = "logo"> <a href = "#"><img src = "jiajia.jpg"/></a> </div> <div class="menu"> <ul class="choose"> <li><a href = "">所有商品</a></li> <li><a href = "">特價商品</a></li> <li><a href = "">安全帽</a></li> <li><a href = "">藍芽耳機</a></li> <li><a href = "">裝備衣物</a></li> <li><a href = "">配件</a></li> <li><a href = "">包包</a></li> </ul> </div> <div class="user"> <ul> <li><a href = "">Log in 登入</a></li> <li>|</li> <li><a href = "">Sign up 註冊</a></li> </ul> </div> </div> </div> <div class="background"> <div class="content"> <h1>在危險的世界中,給你多一份安全</h1> </br> </br> <p>留下您的email,獲得新商品及最新優惠資訊</p> </br> <input type= "email" name = "email" value = "Your email"> </br> <input class="submit" type = "submit" name= "submit" value = "訂閱"> </div> </div> </body> </html> ``` CSS: ``` *{ margin: 0px; padding: 0px; list-style-type: none; text-decoration: none; } .navbar{ background-color: #272727; height: 50px; width: 100%; } .logo img{ height: 50px; } .menu{ position: relative; top: -50px; line-height: 45px; left: 500px; } .menu li{ float: left; } .menu a{ color: #D9B300; display: block; padding: 0 10px; } .menu a:hover{ background-color: #D9B300; color: #272727; } .user{ position: relative; top: -50px; left: 800px; line-height: 45px; } .user li{ float: left; color: #D9B300; } .user a{ color: #D9B300; display: block; padding: 0 10px; } .user a:hover{ background-color: #D9B300; color: #272727; } h1{ color: white; } p{ color: white; } .background{ background-image: url("motor.jpg"); background-size: cover; background-repeat: no-repeat; height: 660px; text-align: center; } .content input{ width: 400px; height: 40px; } .content h1{ font-size: 40px; } .content p{ font-size: 20px; } .content{ position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } .submit{ font-weight: bold; font-size: 20px; background-color: #D9B300; color: #272727; border-radius: 10px; border: 0px; } .submit:hover{ background-color: #272727; color: #D9B300; }
https://replit.com/@birdiewu/Ti-Zhong-Zhui-Zong-Ying-Yong-Cheng-Shi-online-weight-tracker?v=1 ![](https://i.imgur.com/UyLeEpD.jpg) JS部分加上第46~49和55~58行無法更新圖表(官網提供的功能) 新增和刪除資料時,圖表無法跟著一起改變,只能重新整理網頁才會改變 不知道哪邊出了問題@@
https://replit.com/@evon5995/GigaDeadPort#index.html 點擊離開,把用戶跳轉到 google 首頁 點擊確認,就關閉蓋板警告 以上兩功能都完成了 但是“按過確認,重新整理之後,蓋板警告就不會再跳出來”此功能怎麼都無法完成 ![](https://i.imgur.com/KC3I1lQ.png) js的錯誤不知道如何解決
恭喜你完成了一系列的專案開發挑戰 放眼市面上的新手教材,應該沒人會把作業設定到這麼困難! 但我認為時機差不多了,所以要求一些有挑戰性、有趣的專案來讓你做,應該難不倒你 而且這種只用基本功能,就完成複雜專案的經驗,有助於掌握框架的本質、熟練框架基礎 既然你通通順利完成了,代表你的學習狀況「相當不錯」...... 再次跟你說聲恭喜! --- 這些專案內容,已經相當接近實務上、職場上會遇到的開發需求 也就是說,你的開發經驗已經「大大提升」了不少 事實上,光是目前的技能與經驗,已經可以應付職場上絕大多數的功能要求 你已經離「進入職場工作」,又大大靠近了一步! 但是呢,要能夠與團隊共同開發中大型專案,還是需要學習框架進階觀念、生態系、以及 JavaScript 生態系各種工具 坊間補習班,通常會在課程很早期開始教上述這些內容。我認為這會令學習者非常眼花撩亂 所以我讓你僅僅學完 `Essentials` 的內容,就立刻動手開發複雜、好玩的應用程式 我認為這樣才能清楚認識框架的強大,以及知道「工具不是導入越多、搞得越複雜就越好」 而是要視情況,只導入必要的、大小適宜的技術工具,這樣才能收放自如 那麼更大型的專案,又該引入哪些進階觀念、生態系工具呢? 這些會在後續的課程提到! --- 消化、研究完本課程之後,關於 JavaScript 更多必學的基本觀念 請接著前往「自學網頁の嬰兒教材:JavaScript(九)」開始學習吧! https://codelove.tw/@howtomakeaturn/course/QxMYx5
## 課程目標 - 能夠寫出國家資訊與地圖應用程式 ## 課程內容 開發應用程式時,經常需要把多種 API 組合起來使用! 如果各種 API 有提供 Vue 包裝的元件版本,通常會容易許多 如果沒有,那就自己想辦法管理好狀態,在 Vue 裡面使用,通常也沒問題 --- 這一課來寫各國資訊查詢 使用這服務來取得各國資料 https://restcountries.com/ 內含每個國家「中心點」的經緯度 --- 接著要用地圖套件 Leaflet https://leafletjs.com/ 底層圖資,使用 OpenStreetMap https://www.openstreetmap.org/ ## 課後作業 請使用 https://replit.com/ 來寫作業 這次作業的規格如下: - 顯示世界地圖,上面有上百個代表國家的大頭針(marker),放在國家「中心點」的經緯度 - 點擊大頭針,會跳出一個視窗,視窗內含以下資訊: - 國旗圖案 - 國家名稱 - 首都名稱 - 貨幣符號 做出以上功能,你就完成這次的課程目標了!
## 課程目標 - 能夠寫出天氣查詢應用程式 ## 課程內容 開發應用程式時,經常需要上網找一些資料 API 比如搜尋 `台灣氣象資料 api` 會找到中央氣象局開發的 API 服務 https://opendata.cwb.gov.tw/index 想使用這些 API,通常就把官網說明文件看一看,試一試即可 如果不順利,就上網找找看有沒有人寫過 API 串接教學,照做即可 為了避免 API 服務被濫用、過度呼叫,通常 API 需要註冊之後,取得金鑰(key)才能呼叫 如何使用金鑰驗證?通常是在發出 api call 的時候,在 http request header 裡面附上 API key 也有可能就直接在呼叫的 url 附上,或者在 http post 內用 form data 附上 各種 API 驗證方式不同,取決於 API 提供者的主觀偏好 多找找範例、說明文件,多多嘗試即可 --- 這一課來寫天氣查詢應用程式 關鍵字 `weather app ui` ## 課後作業 請使用 https://replit.com/ 來寫作業 這次作業的規格如下: - 頁面上有一個「縣市」選單,可選擇要查詢的縣市 - 選擇縣市之後,在畫面上顯示此縣市當下的這些資訊: - 天氣現象 - 最高溫度 - 最低溫度 - 降雨機率 做出以上功能,你就完成這次的課程目標了!
## 課程目標 - 能夠寫出體重追蹤應用程式 ## 課程內容 找套件時,如果官方沒有提供特定框架的版本,通常會有開發者,自行包裝一個,分享給大家使用 搜尋 `how to use 套件名稱 in 框架名稱` 大概就找得到相關資源了 舉例來說,這款圖表套件,官方沒有提供框架版本 https://www.chartjs.org/ 但是社群就有人做好了 https://vue-chartjs.org/ --- 介紹一個網站 https://dribbble.com/ 業界設計師,經常在上面搜尋別人的成品、找靈感、分享靈感 除了在 google 搜尋關鍵字,也可以常常到 Dribbble 搜尋 --- 這一課來寫體重追蹤應用程式 關鍵字 `weight tracking` ## 課後作業 請使用 https://replit.com/ 來寫作業 這次作業的規格如下: - 這種程式應該要讓人註冊登入使用,需要後端配合,但我們簡化吧:免登入、把資料存在 local storage 就好 - 此程式能夠新增一筆體重資料,input 欄位有「體重」、「日期」 - 有清單列表顯示每一筆輸入的資料,按照日期排序。每筆資料旁邊有刪除按鈕 - 使用 Chart.js 將體重的走勢,用折線圖(Line Chart)呈現 - 請「不要」使用社群包裝的版本(vue-chartjs),學著自己在框架內導入套件 --- 提示:vue 跟 chart.js 整合的時候,有一個地雷!會導致 `RangeError: Maximum call stack size exceeded ` 要解決這個地雷,請參閱這邊的討論 https://codelove.tw/@birdie2019/post/Ja69K3 --- 做出以上功能,你就完成這次的課程目標了!
## 課程目標 - 能夠寫出行事曆應用程式 ## 課程內容 現在新推出的大部份 javascript 套件,都會提供 native(原生)、React、Vue 三種版本,方便使用 舉例來說,這款行事曆套件,就有多種版本 https://fullcalendar.io/ 也有易安裝的 CDN 版本 https://fullcalendar.io/docs/initialize-globals --- 所謂的 React、Vue 或是任何框架版本,其實就只是把套件,根據框架規格,封裝成元件而已 (元件的觀念,之後會教,先別擔心) 套件會大量跟 DOM 互動,框架也會跟 DOM 互動,兩者容易衝突,使用上通常會 bug 一大堆 所以官方會推出套件版本,改掉一些底層寫法,方便框架用戶使用 如果沒有,那就由開發者自己小心管理,通常也沒太大問題 就是把初始化相關放在 `mounted` 裡面,然後狀態更新時,找方法與套件狀態同步,就這樣而已 --- 這一課來寫行事曆應用程式 關鍵字 `calendar app ui` ## 課後作業 請使用 https://replit.com/ 來寫作業 這次作業的規格如下: - 這種程式應該要讓人註冊登入使用,需要後端配合,但我們簡化吧:免登入、把資料存在 local storage 就好 - 有一個「新增活動」按鈕,點擊可以輸入「活動名稱」、選擇「活動日期」與「活動時間」 - 不用做成「開始、結束」兩個時間點,就做成開始時間就好 - 日期時間的 UI,請使用 https://github.com/xdan/datetimepicker - 上述功能,可以做成 modal 視窗(輸入欄位放在視窗內),也可以直接把輸入欄位都放在畫面上 - 使用 FullCalendar 呈現行事曆,將活動顯示在對應日期 - 點擊行事曆內的活動,可以刪除活動。請使用 javascript 內建的 `confirm` 函式,確認「是否刪除此筆活動?」後刪除 - 請「不要」用官方 Vue 版本,請用 CDN 版本,學著自己在框架內導入套件 做出以上功能,你就完成這次的課程目標了!
## 課程目標 - 能夠寫出分帳應用程式 ## 課程內容 實務上,在開發應用程式,難免需要用到一些數學計算 通常也不用到太進階,大概國中數學的內容就很好用了 我個人經驗是,其實國中數學、高中數學的內容,超級強大、好用 只是大家普遍是填鴨式教育出身,失去創意、不知如何運用了 --- 這一課來寫分帳應用程式 關鍵字 `bill split online` `分帳 app` `splitwise 網頁版` ## 課後作業 請使用 https://replit.com/ 來寫作業 這次作業的規格如下: - 這個程式的用途,是跟一群朋友出遊時,方便均分所有支出 - 可以隨時打開使用,所以資料要隨時存到 local storage - 可以清楚看到,誰目前還欠多少錢、誰目前先出了多少錢 - 旅遊結束時,可以根據上述資料,快速地互相結清帳款 UI 規格如下: - 頁面上有一個「分帳成員」清單,裡面列出目前參與分帳的成員 - 有一個「新增成員」按鈕,點擊可以輸入「成員姓名」後新增 - 有一個「新增支出款項」按鈕,點擊可以輸入「款項名稱」、「款項金額」,並且可以選擇「由誰付款」 - 上述兩個功能,可以做成 modal 視窗(輸入欄位放在視窗內),也可以直接把輸入欄位都放在畫面上 - 頁面上條列出所有帳款,顯示付款人、金額、款項名稱,旁邊有刪除按鈕 - 在「分帳成員」清單內,每個成員旁邊顯示「應付金額」或者「應收金額」,分別顯示為紅色、綠色(目前總支出,除以成員人數之後,與成員目前代墊支出的差額) - 頁面上有一個「旅程結束」按鈕,點擊後刪除所有成員、所有款項 做出以上功能,你就完成這次的課程目標了!
## 課程目標 - 能夠寫出筆記應用程式 ## 課程內容 應用程式簡單沒關係,只要精準解決用戶通點 甚至可以收一點點月租費,替開發者「賺到一點零用錢」 這一課來寫筆記應用程式 關鍵字 `write notes online` `online note tool` 研究看看目前市面上,大家都做得怎樣 最簡潔的是這兩款 - https://justnotepad.com/ - http://simplenotes.online/ ## 課後作業 請使用 https://replit.com/ 來寫作業 這次作業的規格如下: - 有一大塊輸入文字的地方,用戶可以當成臨時打筆記的地方 - 以 `textarea` 實作即可,純文字即可,不需要複雜的文章格式編輯器 - 筆記內容要隨時記錄到 local storage,用戶隨時關閉、開啟網頁,都不會失去資料 - 側邊或底部,有一排「筆記清單」,用戶可以在多則筆記之間切換 - 畫面上有一個「建立新筆記」按鈕 - 「筆記清單」的每個筆記旁邊,都有「刪除」按鈕 做出以上功能,你就完成這次的課程目標了!
你的轉職路上,還缺少一份自學作業包!寫完這幾包,直接拿作品去面試上班!
本論壇另有附設一個 LINE 新手發問&交流群組!歡迎加入討論!