--- tags: JS 直播班 - 2021 春季班 --- # 4/1 線上 Slack 助教 ## 今日輪班助教時間 SONYKO:4/1(四) 早上 9:00 - 早上11:00,下午 1:00 -下午 5:00 ## 發問規範 老師助教同學們好,**這是我的 Codepen**,我**原本預期**「JS 第 8 行會出現數字 8」,**但卻出現**「預期外的結果是 0」,想問下問題出在哪裡? ## 注意 1. 請各位先到 Slack 上將問題放在助教服務內的 thread,如圖 ![](https://i.imgur.com/nHE3sOx.png) 2. 遵循以上的發問規範以便助教查看問題,不可直接貼上網址而沒有說明文字或者只提供截圖 3. 助教會依照 Slack 上的順序回覆問題 4. 以下問題區塊只能由助教自行增加 5. 助教會將回覆寫在下方問題區塊 ## 問題 1. **RitaHuang:** 老師助教同學們好,這是我的 Codepen, 請問在 axios.get(urlpath) .then(function(response){ }) 中可以用 forEach嗎? 如果無法,那在 .then(function(response){ }) 中,有辦法一次例出或篩選出自己要的資料嗎? > 助教回覆: axios 取得 API 資料後是可以進行各種操作的唷。這邊可能會混淆,但 forEach 為陣列操作法,跟 axios 其實沒有什麼關係哩。 同學的 code 問題在於: > 1. response 是物件, response.data 才是陣列。 > 2. item["titleName"] (要加上雙引號) > 3. 這邊建議同學將 response.data 建立一個變數會比較好。 例: > ```=js > let data = response.data; > data.forEach(i => { > ... > }) > ``` > 若有不懂的地方歡迎再提出唷~ --- 2. **Hsin :** 老師助教同學們好,這是我的 Codepen,我嘗試更改穎旻助教的範例,想把驗證的訊息更改為中文,但不知道為什麼出現的內容全部都是 '套票描述 是必填欄位' ,其他的描述無法顯現,麻煩助教解惑,感恩! > 助教回覆: > 看了一下同學的 Codepen , 如果在程式碼 80 行內 console.log(errors[keys]) 會回傳 ... > ![](https://i.imgur.com/RG3qUDx.png =x700) > 應該是每跑一次 forEach , 所有欄位都會出現一樣的提示。 forEach 跑最後一次剛好是 "套票描述 是必填欄位" 。 這邊的程式碼應該要再修改。 > 另外附上葉子助教長的 validate.js [範例](https://codepen.io/TzuHui/pen/aQNPga?editors=0010)供同學參考一下。 助教長的提示也是中文哩。 > > 若還是有不懂的地方, 也歡迎再提出唷~ --- 3. **Hua** 助教好 這是我的檔案連結 https://drive.google.com/file/d/1zSRGv1tJ8AJcl26PDDqJElMFClq3aOE6/view?usp=sharing 我想請教一下 我在做第六週的主線時 用本來第五週的LV3 嘗試想做出用axios撈資料後保留篩選的功能 但搞了三個小時還是無法成功 我自己覺得是axios的順序總是被排在最後面 導致吃不到篩選的功能 但又不知道如何解決... 還是這是現階段還沒有教到的? > 助教回覆: > 同學可以直接給助教有接上 axios 的檔案比較好幫你看哩。 > 現階段是可以做出來的歐! 如果是順序的問題, 可以試著將篩選函式於 axios 內呼叫, 這樣他才吃得到資料。 > 如果試試看還是不行的話, 再麻煩同學給助教看看接上 axios 的 code , 這樣比較好幫你看喔。 ---