


HyperApp adalah perpustakaan JavaScript yang ringan untuk membina aplikasi web yang kaya dengan ciri. Ia menggabungkan pendekatan pragmatik, yang diilhamkan oleh ELM kepada pengurusan negeri dengan enjin VDOM yang menyokong kemas kini dan acara kitaran hayat-semuanya tanpa bergantung pada perpustakaan lain. Saiz kod sumber selepas ia diminimumkan dan GZIP dimampatkan adalah kira -kira 1kb.
Tutorial ini akan memperkenalkan anda kepada HyperApp dan membantu anda memulakan dengan cepat dengan beberapa contoh kod. Saya menganggap anda mempunyai pemahaman tentang HTML dan JavaScript, tetapi tidak perlu mempunyai pengalaman menggunakan rangka kerja lain.
mata utama
- HyperApp adalah perpustakaan JavaScript padat yang membolehkan pemaju membina aplikasi web yang menggabungkan pengurusan negeri dengan enjin DOM maya, dengan saiz kira -kira 1kb.
- Aplikasi yang dibina dengan HyperApp terdiri daripada objek negara tunggal, operasi yang mengubah keadaan, dan pandangan yang menukar keadaan dan operasi ke antara muka pengguna. Negeri adalah objek JavaScript biasa yang menggambarkan model data aplikasi dan tidak berubah.
- HyperApp menggunakan DOM maya, yang merupakan penerangan tentang apa yang kelihatan seperti DOM, dicipta dari awal dalam setiap kitaran rendering. Ini membawa kecekapan yang tinggi, kerana biasanya terdapat hanya beberapa nod yang perlu diubah.
- HyperApp boleh digunakan dengan JSX (lanjutan bahasa JavaScript untuk mewakili HTML dinamik) atau bersendirian. Anda juga boleh memuatkan HyperApp dari CDN seperti UNPKG, yang akan tersedia secara global melalui objek Window.HyperApp.
- HyperApp lebih mudah berbanding dengan perpustakaan lain seperti React atau Vue kerana ia kecil dan merupakan penyelesaian lengkap untuk membina aplikasi web. Ia selanjutnya membangunkan konsep pandangan sebagai fungsi negara dan mempunyai penyelesaian pengurusan negeri terbina dalam yang diilhamkan oleh ELM.
Hello World
kita akan bermula dengan demonstrasi mudah yang menunjukkan semua komponen yang berfungsi bersama -sama. Anda juga boleh mencuba kod ini dalam talian.
import { h, app } from "hyperapp"; // @jsx h const state = { count: 0 }; const actions = { down: () => state => ({ count: state.count - 1 }), up: () => state => ({ count: state.count + 1 }) }; const view = (state, actions) => ( <div> <h1 id="state-count">{state.count}</h1> <button onclick={actions.down}>-</button> <button onclick={actions.up}>+</button> </div> ); app(state, actions, view, document.body);Ini adalah kira -kira apa yang setiap aplikasi HyperApp kelihatan seperti: objek negara tunggal, operasi yang mengisi negeri, dan pandangan yang menukarkan keadaan dan operasi ke antara muka pengguna.
Di dalam fungsi
, kami menyalin negeri dan operasi anda (tidak sopan untuk mengubahsuai objek yang tidak kita miliki) dan lulus mereka ke pandangan. Kami juga membungkus tindakan anda supaya permohonan itu diberikan semula setiap kali keadaan berubah. app
app(state, actions, view, document.body);Negeri adalah objek JavaScript biasa yang menerangkan model data aplikasi anda. Ia juga tidak berubah. Untuk mengubahnya, anda perlu menentukan tindakan dan memanggilnya.
const state = { count: 0 };Dalam pandangan, anda boleh memaparkan sifat Negeri, menggunakannya untuk menentukan bahagian -bahagian UI yang harus dipaparkan atau tersembunyi, dan lain -lain.
<h1 id="state-count">{state.count}</h1>anda juga boleh melampirkan tindakan ke acara DOM, atau memanggil tindakan dalam pengendali acara inline anda sendiri.
import { h, app } from "hyperapp"; // @jsx h const state = { count: 0 }; const actions = { down: () => state => ({ count: state.count - 1 }), up: () => state => ({ count: state.count + 1 }) }; const view = (state, actions) => ( <div> <h1 id="state-count">{state.count}</h1> <button onclick={actions.down}>-</button> <button onclick={actions.up}>+</button> </div> ); app(state, actions, view, document.body);
Operasi tidak akan secara langsung mengubah keadaan, tetapi akan mengembalikan klip baru Negeri. Jika anda cuba mengubah suai keadaan dalam tindakan dan kemudian mengembalikannya, pandangan itu tidak akan menyerahkan semula seperti yang anda harapkan.
app(state, actions, view, document.body);
app
Panggilan Pulangan Objek Operasi yang disambungkan ke kitaran rendering kemas kini status. Anda juga menerima objek ini dalam fungsi dan operasi. Ia sangat berguna untuk mendedahkan objek ini ke dunia luar kerana ia membolehkan anda berinteraksi dengan aplikasi anda dari program lain, rangka kerja, atau JavaScript asli.
const state = { count: 0 };
(seluruh kandungannya sama, tetapi ayat diganti sinonim dan pelarasan struktur kalimat, menjaga makna asal tidak berubah, dan panjangnya terlalu panjang, ditinggalkan di sini)
Ringkasan:(gambar tetap menjadi format asal dan kedudukan tidak berubah)
Atas ialah kandungan terperinci HyperApp: Perpustakaan 1 kb JavaScript untuk membina aplikasi front-end. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Tutorial ini menunjukkan kepada anda bagaimana untuk mengintegrasikan API carian Google tersuai ke dalam blog atau laman web anda, menawarkan pengalaman carian yang lebih halus daripada fungsi carian tema WordPress standard. Ia menghairankan mudah! Anda akan dapat menyekat carian ke y

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

Siri artikel ini ditulis semula pada pertengahan 2017 dengan maklumat terkini dan contoh segar. Dalam contoh JSON ini, kita akan melihat bagaimana kita dapat menyimpan nilai mudah dalam fail menggunakan format JSON. Menggunakan notasi pasangan nilai utama, kami boleh menyimpan apa-apa jenis

Tingkatkan Penyampaian Kod Anda: 10 Penyeret Sintaks untuk Pemaju Coretan kod perkongsian di laman web atau blog anda adalah amalan biasa bagi pemaju. Memilih penyapu sintaks yang betul dapat meningkatkan daya tarikan dan daya tarikan visual dengan ketara. T

Leverage JQuery untuk Layouts Laman Web yang mudah: 8 Plugin Essential JQuery memudahkan susun atur laman web dengan ketara. Artikel ini menyoroti lapan plugin jQuery yang kuat yang menyelaraskan proses, terutamanya berguna untuk penciptaan laman web manual

Artikel ini membentangkan pemilihan lebih daripada 10 tutorial mengenai rangka kerja javascript dan jquery model-view-controller (MVC), sesuai untuk meningkatkan kemahiran pembangunan web anda pada tahun baru. Tutorial ini merangkumi pelbagai topik, dari Foundatio

Mata teras Ini dalam JavaScript biasanya merujuk kepada objek yang "memiliki" kaedah, tetapi ia bergantung kepada bagaimana fungsi dipanggil. Apabila tidak ada objek semasa, ini merujuk kepada objek global. Dalam penyemak imbas web, ia diwakili oleh tetingkap. Apabila memanggil fungsi, ini mengekalkan objek global; tetapi apabila memanggil pembina objek atau mana -mana kaedahnya, ini merujuk kepada contoh objek. Anda boleh mengubah konteks ini menggunakan kaedah seperti panggilan (), memohon (), dan mengikat (). Kaedah ini memanggil fungsi menggunakan nilai dan parameter yang diberikan. JavaScript adalah bahasa pengaturcaraan yang sangat baik. Beberapa tahun yang lalu, ayat ini


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

MantisBT
Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

DVWA
Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

SublimeText3 versi Inggeris
Disyorkan: Versi Win, menyokong gesaan kod!

Penyesuai Pelayan SAP NetWeaver untuk Eclipse
Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

Dreamweaver Mac版
Alat pembangunan web visual
