cari
Rumahhujung hadapan webtutorial jsMencipta Apl Koleksi Pokémon Saya: Data Setempat, Interaktiviti dan Acara JavaScript

Creating My Pokémon Collection App: Local Data, Interactivity, and JavaScript Events

pengenalan

Apabila saya memulakan projek ini, matlamat saya adalah mudah: untuk mencipta aplikasi koleksi Pokémon yang membolehkan pengguna menerokai Pokémon dan butiran mereka. Dengan menggabungkan JavaScript, Node.js dan data setempat, saya membina apl interaktif yang membolehkan pengguna melihat imej, kebolehan dan jenis Pokémon—semuanya sambil memperhalusi kemahiran saya dengan pendengar acara, kemas kini kandungan dinamik dan banyak lagi. Semasa saya bekerja dengan rakan kongsi, saya akan menumpukan pada kerja saya secara khusus. Begini caranya!


Gambaran Keseluruhan Projek

Apl ini direka bentuk untuk mempamerkan koleksi imej dan statistik Pokémon, memudahkan pengguna mengklik pada setiap Pokémon untuk melihat butiran dan bertukar antara imej utama dan alternatif dengan interaksi tuding. Saya menyampaikan data Pokémon secara setempat, yang membolehkan saya menumpukan pada cara untuk memaparkan, mengemas kini dan berinteraksi dengan data dalam apl itu sendiri.


Menyediakan Data Tempatan dengan db.json

Daripada menarik dari API luaran, saya mencipta fail db.json setempat dengan data Pokémon, termasuk atribut seperti nama, jenis, keupayaan dan laluan imej. Menjalankan pelayan tempatan pada http://localhost:3500/pokemon, saya boleh mengambil data ini menggunakan kaedah pengambilan dalam JavaScript. Persediaan yang dipermudahkan membolehkan saya membina dan menguji apl sepenuhnya di luar talian.


Panduan Kod

Berikut ialah cara saya mendekati bahagian penting projek.

  1. Mengambil Data: Langkah pertama ialah mengambil data Pokémon daripada pelayan tempatan. Saya mencipta fungsi getAllPokemon untuk mengendalikan permintaan pengambilan dan mengembalikan butiran Pokémon dalam format JSON.
   function getAllPokemon() {
     return fetch(pokemonURL).then(response => response.json());
   }

Fungsi ini menarik data Pokémon daripada http://localhost:3500/pokemon, yang kemudiannya saya gunakan untuk memaparkan setiap Pokémon secara dinamik.

  1. Memaparkan Pokémon: Untuk mengisi koleksi, saya menggunakan fungsi displayPokemons yang berulang melalui data Pokémon yang diambil dan menjadikan setiap item sebagai imej. Saya juga menambah pendengar acara klik pada setiap imej, yang membuka butiran Pokémon apabila dipilih:
   const displayPokemons = () => {
     getAllPokemon().then(pokemonArr => {
       pokemonArr.forEach(renderPokemon);
       handleClick(pokemonArr[0]); // Display first Pokémon by default
     });
   }

Fungsi renderPokemon mencipta imej untuk setiap Pokémon, menambah gaya dan melampirkan acara klik untuk memaparkan butiran.

  1. Pendengar Acara: Menambah Interaktiviti Saya menggunakan dua jenis utama pendengar acara dalam projek ini: pendengar penyerahan borang untuk menambahkan acara Pokémon dan mouseover/mouseout baharu untuk bertukar-tukar antara imej. Pendengar ini menjadikan apl lebih menarik dan mesra pengguna.
  • Penyerahan Borang:

    Untuk menambah Pokémon baharu, saya menyediakan pendengar hantar pada borang, yang mengumpulkan nilai daripada medan input dan menambahkan Pokémon baharu pada koleksi. Pokémon baharu ini dipaparkan tanpa perlu memuat semula halaman:

       function getAllPokemon() {
         return fetch(pokemonURL).then(response => response.json());
       }
    

    Di sini, event.preventDefault() menghentikan borang daripada memuat semula halaman, memastikan pengalaman pengguna yang lancar.

  • Acara Tetikus untuk Imej Ganti:

    Apabila pengguna menuding pada imej Pokémon dalam bahagian butiran, ia bertukar kepada imej alternatif, mensimulasikan evolusi atau transformasi. Peristiwa alih tetikus mencetuskan suis ini, manakala tetikus keluar membalikkannya semula:

       const displayPokemons = () => {
         getAllPokemon().then(pokemonArr => {
           pokemonArr.forEach(renderPokemon);
           handleClick(pokemonArr[0]); // Display first Pokémon by default
         });
       }
    

    Kesan ini memberikan pengguna cara yang menyeronokkan untuk berinteraksi dengan setiap Pokémon dan meneroka ciri-cirinya secara visual.


Cabaran dan Perkara Pembelajaran

Satu cabaran ialah menstrukturkan JavaScript untuk memastikannya modular dan terurus, kerana pendengar acara dan elemen dinamik boleh menjadi sukar untuk dikesan dengan cepat. Saya belajar untuk membahagikan kod saya kepada fungsi yang lebih kecil dan menggunakan pendengar acara secara selektif untuk mengoptimumkan prestasi dan kebolehbacaan.


Membungkus

Projek pengumpulan Pokémon ini merupakan cara yang menarik untuk menggunakan JavaScript, bereksperimen dengan pengambilan data setempat dan menambah interaktiviti dipacu peristiwa yang menarik. Membina apl ini dari awal memberi saya pengalaman berharga dengan konsep bahagian hadapan dan belakang, menjadikan saya terinspirasi untuk meneroka lebih banyak projek interaktif pada masa hadapan.

Lihat projek saya di GitHub!:

https://github.com/kelseyroche/phase-1-project-pokemon

Atas ialah kandungan terperinci Mencipta Apl Koleksi Pokémon Saya: Data Setempat, Interaktiviti dan Acara JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Ganti aksara rentetan dalam javascriptGanti aksara rentetan dalam javascriptMar 11, 2025 am 12:07 AM

Penjelasan terperinci mengenai kaedah penggantian rentetan javascript dan Soalan Lazim Artikel ini akan meneroka dua cara untuk menggantikan watak rentetan dalam JavaScript: Kod JavaScript dalaman dan HTML dalaman untuk laman web. Ganti rentetan di dalam kod JavaScript Cara yang paling langsung ialah menggunakan kaedah pengganti (): str = str.replace ("cari", "ganti"); Kaedah ini hanya menggantikan perlawanan pertama. Untuk menggantikan semua perlawanan, gunakan ungkapan biasa dan tambahkan bendera global g: str = str.replace (/fi

Bina Aplikasi Web Ajax anda sendiriBina Aplikasi Web Ajax anda sendiriMar 09, 2025 am 12:11 AM

Jadi di sini anda, bersedia untuk mempelajari semua perkara ini yang dipanggil Ajax. Tetapi, apa sebenarnya? Istilah Ajax merujuk kepada kumpulan teknologi longgar yang digunakan untuk membuat kandungan web yang dinamik dan interaktif. Istilah Ajax, yang asalnya dicipta oleh Jesse J

Bagaimana saya membuat dan menerbitkan perpustakaan JavaScript saya sendiri?Bagaimana saya membuat dan menerbitkan perpustakaan JavaScript saya sendiri?Mar 18, 2025 pm 03:12 PM

Artikel membincangkan membuat, menerbitkan, dan mengekalkan perpustakaan JavaScript, memberi tumpuan kepada perancangan, pembangunan, ujian, dokumentasi, dan strategi promosi.

Bagaimanakah saya mengoptimumkan kod JavaScript untuk prestasi dalam penyemak imbas?Bagaimanakah saya mengoptimumkan kod JavaScript untuk prestasi dalam penyemak imbas?Mar 18, 2025 pm 03:14 PM

Artikel ini membincangkan strategi untuk mengoptimumkan prestasi JavaScript dalam pelayar, memberi tumpuan kepada mengurangkan masa pelaksanaan dan meminimumkan kesan pada kelajuan beban halaman.

Bagaimanakah saya boleh debug kod javascript dengan berkesan menggunakan alat pemaju pelayar?Bagaimanakah saya boleh debug kod javascript dengan berkesan menggunakan alat pemaju pelayar?Mar 18, 2025 pm 03:16 PM

Artikel ini membincangkan debugging JavaScript yang berkesan menggunakan alat pemaju pelayar, memberi tumpuan kepada menetapkan titik putus, menggunakan konsol, dan menganalisis prestasi.

Cara Membina Slider JQuery MudahCara Membina Slider JQuery MudahMar 11, 2025 am 12:19 AM

Artikel ini akan membimbing anda untuk membuat karusel gambar mudah menggunakan perpustakaan jQuery. Kami akan menggunakan perpustakaan BXSlider, yang dibina di atas jQuery dan menyediakan banyak pilihan konfigurasi untuk menubuhkan karusel. Pada masa kini, Gambar Carousel telah menjadi ciri yang mesti ada di laman web - satu gambar lebih baik daripada seribu perkataan! Selepas membuat keputusan untuk menggunakan karusel gambar, soalan seterusnya adalah bagaimana untuk menciptanya. Pertama, anda perlu mengumpul gambar-gambar resolusi tinggi yang berkualiti tinggi. Seterusnya, anda perlu membuat karusel gambar menggunakan HTML dan beberapa kod JavaScript. Terdapat banyak perpustakaan di web yang dapat membantu anda membuat karusel dengan cara yang berbeza. Kami akan menggunakan Perpustakaan BXSlider Sumber Terbuka. Perpustakaan BXSlider menyokong reka bentuk responsif, jadi karusel yang dibina dengan perpustakaan ini dapat disesuaikan dengan mana -mana

kesan matriks jQuerykesan matriks jQueryMar 10, 2025 am 12:52 AM

Bawa kesan filem matriks ke halaman anda! Ini adalah plugin jQuery yang sejuk berdasarkan filem terkenal "The Matrix". Plugin mensimulasikan kesan aksara hijau klasik dalam filem, dan hanya pilih gambar dan plugin akan mengubahnya menjadi gambar gaya matriks yang diisi dengan aksara angka. Datang dan cuba, sangat menarik! Bagaimana ia berfungsi Plugin memuat imej ke kanvas dan membaca nilai piksel dan warna: data = ctx.getimagedata (x, y, settings.grainsize, settings.grainsize) .data Plugin dengan bijak membaca kawasan segi empat tepat gambar dan menggunakan jQuery untuk mengira warna purata setiap kawasan. Kemudian, gunakan

Bagaimanakah saya menggunakan peta sumber untuk debug kod JavaScript minified?Bagaimanakah saya menggunakan peta sumber untuk debug kod JavaScript minified?Mar 18, 2025 pm 03:17 PM

Artikel ini menerangkan cara menggunakan peta sumber untuk debug JavaScript minifikasi dengan memetakannya kembali ke kod asal. Ia membincangkan membolehkan peta sumber, menetapkan titik putus, dan menggunakan alat seperti Chrome Devtools dan Webpack.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

Dreamweaver Mac版

Dreamweaver Mac版

Alat pembangunan web visual

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

MinGW - GNU Minimalis untuk Windows

MinGW - GNU Minimalis untuk Windows

Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.