国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Rumah hujung hadapan web tutorial js Pengurusan Negeri Mudah di JavaScript dengan Negeri Pengasuh

Pengurusan Negeri Mudah di JavaScript dengan Negeri Pengasuh

Feb 09, 2025 am 11:56 AM

Simple State Management in JavaScript with Nanny State

Nanny State: Perpustakaan Pengurusan Negeri Vanila JS yang diselaraskan

Nanny State adalah perpustakaan mini yang direka untuk memudahkan proses membina aplikasi web berasaskan negeri menggunakan JavaScript asli. Ia sama dengan React, tetapi dengan kurang overhead, tidak perlu mempelajari sintaks baru. Ia menggunakan satu objek keadaan seluruh aplikasi dan bukannya membiarkan setiap komponen mempunyai keadaan sendiri. Ia diilhamkan oleh HyperApp dan mempunyai banyak persamaan dengan ELM.

Artikel ini akan menjelaskan bagaimana Nanny State berfungsi dan menunjukkan fungsinya dengan beberapa contoh.

Mata Utama:

  1. Pengenalan Negeri Nanny: Nanny State adalah perpustakaan minimalis untuk membina aplikasi web berasaskan negeri menggunakan JavaScript asli, yang lebih mudah dan kurang overhead daripada bertindak balas. Ia menggunakan satu objek negeri yang luas, bukannya satu keadaan setiap komponen, yang diilhamkan oleh HyperApp dan ELM, dan direka untuk menjadi mudah untuk diterima pakai tanpa mempelajari sintaks baru. Model aliran data satu arah:
  2. Perpustakaan ini didasarkan pada model aliran data sehala dan terdiri daripada tiga bahagian teras: keadaan (objek yang memegang semua data aplikasi), dan lihat (an pulangan berdasarkan keadaan semasa). Model ini menekankan kesederhanaan, dengan objek negara sebagai satu -satunya sumber fakta, memastikan determinisme, konsistensi, dan ramalan tingkah laku aplikasi.
  3. Contoh dan Skalabiliti Praktikal: dengan contoh praktikal (termasuk aplikasi asas "Hello Nanny State" dan permainan Q & A yang benar dan palsu), artikel itu menunjukkan bangunan dinamik, responsif dengan kesederhanaan dan kecekapan negara pengasuh aplikasi web gaya. Mempamerkan potensi perpustakaan untuk membuat aplikasi interaktif dengan kod minimum, serta cadangan untuk memperluaskan permainan Q & A, menonjolkan kepelbagaian dan sokongan Nanny State untuk ciri -ciri canggih seperti penyimpanan dan penghalaan tempatan.
  4. aliran data sehala Nanny State menggunakan model aliran data sehala, yang terdiri daripada tiga bahagian:

Negeri:

Objek yang menyimpan semua data aplikasi.

  • Lihat (Lihat): Fungsi yang mengembalikan rentetan HTML berdasarkan keadaan semasa.
  • Kemas kini: Satu-satunya fungsi yang boleh mengubah keadaan dan membuat semula pandangan.
  • Dalam keadaan pengasuh, keadaan adalah segalanya. Objek Negeri adalah satu -satunya sumber fakta untuk aplikasi -setiap bahagian data aplikasi adalah harta benda ini. Malah pengendali acara yang digunakan dalam pandangan adalah sifat objek negara.
  • Lihat adalah perwakilan negara sebagai HTML. Ia berubah apabila keadaan berubah dan membolehkan pengguna berinteraksi dengan aplikasi.

Fungsi kemas kini adalah satu -satunya cara untuk mengubah keadaan. Ia adalah satu titik masuk untuk mengemas kini keadaan dan memastikan perubahan adalah deterministik, konsisten, dan boleh diramal.

Membina permohonan negara pengasuh hanya memerlukan ketiga -tiga bahagian ini. Malah, ia boleh diringkaskan seperti berikut tiga soalan:

  1. data apa yang perlu disimpan oleh aplikasi saya? Ini akan membentuk sifat objek negara.
  2. bagaimana saya mahu data aplikasi diberikan pada halaman? Ini akan membantu anda membuat fungsi pandangan.
  3. Bagaimanakah data aplikasi akan berubah apabila pengguna berinteraksi dengan aplikasi? Untuk tujuan ini, fungsi perlu dikemas kini.

Hello Nanny State!

Cara paling mudah untuk memahami bagaimana kerja -kerja Nanny State adalah untuk menulis beberapa kod! Kami akan bermula dengan contoh asas dan cuba membuat sesuatu yang lebih kompleks.

Cara paling mudah untuk menjalankan contoh berikut ialah menggunakan editor kod dalam talian seperti Codepen, atau anda boleh menjalankannya secara tempatan dengan memasang pakej Nanny-State menggunakan NodeJS.

Salin kod berikut ke bahagian JS Codepen:

import { Nanny, html } from 'https://cdn.skypack.dev/nanny-state';

const View = state => html`<h1>Hello ${state.name}</h1>`;

const State = {
  name: "Nanny State",
  View
};

const Update = Nanny(State);

Ini menunjukkan bagaimana tiga bahagian negara pengasuh bekerja bersama -sama. Mari kita lihat dengan lebih dekat setiap bahagian:

const View = state => html`<h1>Hello ${state.name}</h1>`;

Nanny State menggunakan μhtml untuk menjadikan HTML. Fungsi paparan selalu menerima objek negara sebagai parameter yang unik . Ia kemudian menggunakan fungsi HTML yang disediakan oleh μHTML untuk membuat HTML berdasarkan literasi templat yang disediakan sebagai parameter.

Menggunakan literals templat bermakna kita boleh memasukkan sifat -sifat keadaan ke dalam pandangan menggunakan simbol

. Dalam contoh ini, kami menggunakannya untuk memasukkan nilai atribut nama ke dalam elemen ${variable}. <h1>

const State = {
  name: "Nanny State",
  View
};
Objek Negeri adalah di mana semua data aplikasi disimpan. Ia mengandungi sebarang atribut dan nilai yang akan dipaparkan dalam pandangan yang mungkin berubah sepanjang hayat permohonan, seperti atribut nama dalam contoh ini.

Sila ambil perhatian bahawa pandangan juga merupakan harta negara menggunakan notasi singkatan objek. Ingat

status adalah segala -galanya - Setiap bahagian permohonan adalah harta Negeri.

const Update = Nanny(State);
baris terakhir mentakrifkan fungsi kemas kini sebagai nilai pulangan fungsi pengasuh. Ini kini boleh digunakan untuk mengemas kini nilai mana -mana harta Negeri. Malah, ini adalah satu -satunya cara untuk mengemas kini mana -mana harta negara. Ia juga melakukan rendering awal pandangan berdasarkan nilai yang disediakan dalam keadaan. Ini bermakna tajuk akan dipaparkan dengan perkataan "Hello Nanny State" seperti yang ditunjukkan dalam codepen di bawah:

... (Kandungan berikutnya adalah serupa dengan teks asal, kecuali bahasa dan ekspresi diselaraskan, teks asal tidak berubah, dan semua gambar dan formatnya dikekalkan.)

Atas ialah kandungan terperinci Pengurusan Negeri Mudah di JavaScript dengan Negeri Pengasuh. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

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.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Agnes Tachyon Build Guide | Musume Derby Pretty
2 minggu yang lalu By Jack chen
Oguri Cap Build Guide | Musume Derby Pretty
2 minggu yang lalu By Jack chen
Puncak: Cara Menghidupkan Pemain
4 minggu yang lalu By DDD
Puncak bagaimana untuk emote
3 minggu yang lalu By Jack chen

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Java vs JavaScript: Membersihkan kekeliruan Java vs JavaScript: Membersihkan kekeliruan Jun 20, 2025 am 12:27 AM

Java dan JavaScript adalah bahasa pengaturcaraan yang berbeza, masing -masing sesuai untuk senario aplikasi yang berbeza. Java digunakan untuk pembangunan aplikasi perusahaan dan mudah alih yang besar, sementara JavaScript digunakan terutamanya untuk pembangunan laman web.

Bagaimana untuk bekerja dengan tarikh dan masa di JS? Bagaimana untuk bekerja dengan tarikh dan masa di JS? Jul 01, 2025 am 01:27 AM

Titik berikut harus diperhatikan apabila tarikh pemprosesan dan masa di JavaScript: 1. Terdapat banyak cara untuk membuat objek tarikh. Adalah disyorkan untuk menggunakan rentetan format ISO untuk memastikan keserasian; 2. Dapatkan dan tetapkan maklumat masa boleh diperoleh dan tetapkan kaedah, dan ambil perhatian bahawa bulan bermula dari 0; 3. Tarikh pemformatan secara manual memerlukan rentetan, dan perpustakaan pihak ketiga juga boleh digunakan; 4. Adalah disyorkan untuk menggunakan perpustakaan yang menyokong zon masa, seperti Luxon. Menguasai perkara -perkara utama ini secara berkesan dapat mengelakkan kesilapan yang sama.

Kenapa anda harus meletakkan tag  di bahagian bawah ? Kenapa anda harus meletakkan tag di bahagian bawah ? Jul 02, 2025 am 01:22 AM

PlacingtagsatthebottomofablogpostorwebpageservespracticalpurposesforSEO,userexperience,anddesign.1.IthelpswithSEObyallowingsearchenginestoaccesskeyword-relevanttagswithoutclutteringthemaincontent.2.Itimprovesuserexperiencebykeepingthefocusonthearticl

JavaScript vs Java: Perbandingan Komprehensif untuk Pemaju JavaScript vs Java: Perbandingan Komprehensif untuk Pemaju Jun 20, 2025 am 12:21 AM

JavaScriptispreferredforwebdevelopment, whersjavaisbetterforlarge-scalebackendsystemsandandroidapps.1) javascriptexcelsinceleatinginteractiveWebexperienceswithitsdynamicnatureanddommanipulation.2) javaoffersstrongyblectionandobjection

Apakah peristiwa yang menggelegak dan menangkap di Dom? Apakah peristiwa yang menggelegak dan menangkap di Dom? Jul 02, 2025 am 01:19 AM

Penangkapan dan gelembung acara adalah dua peringkat penyebaran acara di Dom. Tangkap adalah dari lapisan atas ke elemen sasaran, dan gelembung adalah dari elemen sasaran ke lapisan atas. 1. Penangkapan acara dilaksanakan dengan menetapkan parameter useCapture addeventlistener kepada benar; 2. Bubble acara adalah tingkah laku lalai, useCapture ditetapkan kepada palsu atau ditinggalkan; 3. Penyebaran acara boleh digunakan untuk mencegah penyebaran acara; 4. Acara menggelegak menyokong delegasi acara untuk meningkatkan kecekapan pemprosesan kandungan dinamik; 5. Penangkapan boleh digunakan untuk memintas peristiwa terlebih dahulu, seperti pemprosesan pembalakan atau ralat. Memahami kedua -dua fasa ini membantu mengawal masa dan bagaimana JavaScript bertindak balas terhadap operasi pengguna.

JavaScript: Meneroka jenis data untuk pengekodan yang cekap JavaScript: Meneroka jenis data untuk pengekodan yang cekap Jun 20, 2025 am 12:46 AM

JavascripthassevenfundamentalDatypes: nombor, rentetan, boolean, undefined, null, objek, andsymbol.1) numberuseadouble-precisionformat, bergunaforwidevaluangesbutbecautiouswithfloating-pointarithmetic.2)

Bagaimanakah anda dapat mengurangkan saiz muatan aplikasi JavaScript? Bagaimanakah anda dapat mengurangkan saiz muatan aplikasi JavaScript? Jun 26, 2025 am 12:54 AM

Jika aplikasi JavaScript memuat perlahan -lahan dan mempunyai prestasi yang buruk, masalahnya adalah bahawa muatan terlalu besar. Penyelesaian termasuk: 1. Penggunaan kod pemisahan (codesplitting), memecah bundle besar ke dalam pelbagai fail kecil melalui react.lazy () atau membina alat, dan memuatkannya seperti yang diperlukan untuk mengurangkan muat turun pertama; 2. Keluarkan kod yang tidak digunakan (treeshaking), gunakan mekanisme modul ES6 untuk membersihkan "kod mati" untuk memastikan perpustakaan yang diperkenalkan menyokong ciri ini; 3. Memampatkan dan menggabungkan fail sumber, membolehkan GZIP/Brotli dan Terser memampatkan JS, menggabungkan fail dan mengoptimumkan sumber statik; 4. Gantikan kebergantungan tugas berat dan pilih perpustakaan ringan seperti hari.js dan ambil

Roundup JS yang pasti pada modul JavaScript: Modul ES vs Commonjs Roundup JS yang pasti pada modul JavaScript: Modul ES vs Commonjs Jul 02, 2025 am 01:28 AM

Perbezaan utama antara modul ES dan Commonjs adalah kaedah pemuatan dan senario penggunaan. 1.Commonjs dimuatkan secara serentak, sesuai untuk persekitaran sisi pelayan Node.js; 2. Modul tidak disengajakan, sesuai untuk persekitaran rangkaian seperti penyemak imbas; 3. Sintaks, modul ES menggunakan import/eksport dan mesti terletak di skop peringkat atas, manakala penggunaan CommonJS memerlukan/modul.exports, yang boleh dipanggil secara dinamik pada runtime; 4.Commonjs digunakan secara meluas dalam versi lama node.js dan perpustakaan yang bergantung kepadanya seperti Express, manakala modul ES sesuai untuk kerangka depan moden dan nod.jsv14; 5. Walaupun ia boleh dicampur, ia boleh menyebabkan masalah dengan mudah.

See all articles