Beranda › Forums › Belajar Menjadi Full Stack Web Developer Tingkat Menengah › Studi Kasus Aplikasi Daftar Lagu part IV
- This topic has 7 replies, 4 voices, and was last updated 3 years, 5 months ago by Coach Vincent.
-
AuthorPosts
-
January 19, 2023 at 9:12 PM #191472
Saya sudah mengikuti kodingan di video dari part I, namun saya stuck di static getPlaylist.
Ketika saya console.log data, output Songs nya masih memiliki isi ([ { id: 1, name: ‘Favourite Music’, Songs: [ [Object], [Object] ] } ]). Begitu juga dengan let {id, name, songs} = playlist; (Songs: [{ id: 1, name: ‘Paint My Love’, duration: 300, genre: ‘Pop’ },{ id: 2, name: ‘Songs Rock’, duration: 120, genre: ‘Rock’ }]). Namun ketika memasuki bagian songs.map, malah error. Dan setelah saya cek ternyata songs nya tidak terisi dengan songs dari json, malah berisi udefined. Mohon bantuannya Coach.
Kode lengkap:
static getPlaylist() { let data = JSON.parse(fs.readFileSync('./data.json', 'utf-8')); let playlists = data.map(playlist => { let {id, name, songs} = playlist; songs = songs.map(song => { // lokasi error let {id, name, duration, genre} = song; if (genre === 'Pop') { return new Pop(id, name, duration); } else if (genre === 'Rock') { return new Rock(id, name, duration); } }); return new Playlist(id, name, songs); }); return playlists; }Pesan error:
E:\ITBOX\Studi Kasus\Playlist & Song\models\Playlist.js:24
songs = songs.map(song => {
^TypeError: Cannot read properties of undefined (reading ‘map’)
at E:\ITBOX\Studi Kasus\Playlist & Song\models\Playlist.js:24:27
at Array.map (<anonymous>)
at Playlist.getPlaylist (E:\ITBOX\Studi Kasus\Playlist & Song\models\Playlist.js:13:30)
at Playlist.show (E:\ITBOX\Studi Kasus\Playlist & Song\models\Playlist.js:38:25)
at PlaylistController.show (E:\ITBOX\Studi Kasus\Playlist & Song\controllers\PlaylistController.js:5:18)
at Object.<anonymous> (E:\ITBOX\Studi Kasus\Playlist & Song\index.js:16:28)
at Module._compile (node:internal/modules/cjs/loader:1239:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1293:10)
at Module.load (node:internal/modules/cjs/loader:1096:32)
at Module._load (node:internal/modules/cjs/loader:935:12)March 18, 2023 at 9:50 PM #193174mungkin itu ada yg salah di bagian data.json nya. atau di data.json bagian songs, itu masih belum dikasih array kosong. makanya pas manggil songs.map, data songs yang ada di data.json nya belum ada arraynya sehingga muncul error. mungkin itu jawaban dari aku ya. klo ada yg salah mohon dikoreksi
April 28, 2023 at 11:02 AM #194848Iya benar harus sesuai dulu object dalam song nya.
Bisa di debugging dl 1 1
Terima kasihMay 27, 2023 at 7:33 PM #196626ya nih kasus aq sama,
songs = songs.map(song => {
^TypeError: Cannot read properties of undefined (reading ‘map’)
masih bingung
🙁
May 28, 2023 at 10:11 AM #196647mohon pencerahannya coach, untuk case ini tampilan di terminal seperti ini
PS C:\Users\Administrator\Documents\StudyCase\Playlist and Song> node index.js showPlaylist
[class Playlist]May 29, 2023 at 1:34 PM #196738Baik terima kasih.
apakah sudah bisa?May 29, 2023 at 7:56 PM #196769Ok coach, udah bisa. sekalian sharing nih, khusus case saya
1. masalah songs.map ada perbedaan penulisan di json.data (song) sama di playlist.js (songs)
2. hanya ada tampilan [class Playlist], lagi lagi kurang “s” di return playlists.May 30, 2023 at 4:12 PM #196923baik terima kasih
-
AuthorPosts
- You must be logged in to reply to this topic.