Dalam tutorial ini, kami akan memperkenalkan Svelte dengan membina permohonan berita yang diilhamkan oleh Daily Planet, akhbar fiksyen dari dunia Superman.
Takeaways Key
Svelte adalah perpustakaan UI JavaScript baru yang tidak menggunakan DOM maya, menjadikannya lebih cepat daripada kerangka yang paling kuat seperti React, Vue, dan Angular. Ia mengalihkan kerja yang diperlukan untuk fasa kompilasi pada mesin pembangunan ketika membina aplikasi.
- Tutorial menyediakan panduan langkah demi langkah untuk membina aplikasi berita yang diilhamkan oleh Daily Planet, sebuah akhbar fiksyen dari dunia Superman. Ini termasuk memulakan projek Svelte, menjalankan pelayan pembangunan tempatan, dan membina bundle akhir.
- Tutorial ini juga merangkumi penggunaan alat degit untuk menghasilkan projek -projek svelte, mengambil data dari titik akhir berita, dan mewujudkan UI untuk aplikasi.
- Setelah membangunkan aplikasi, seseorang boleh membuat bundle pengeluaran dengan menjalankan perintah binaan di terminal dan menjadi tuan rumah aplikasi menggunakan ZEIT Now, platform awan untuk laman web dan fungsi tanpa pelayan.
- tentang Svelte
secara ringkas, ini adalah bagaimana kerja -kerja Svelte (seperti yang dinyatakan dalam blog rasmi):
Svelte berjalan pada
binaan masa, menukar komponen anda ke dalam kodKami akan belajar tentang konsep asas seperti komponen svelte dan bagaimana untuk mengambil dan melepasi array data. Kami juga akan belajar bagaimana untuk memulakan projek Svelte, menjalankan pelayan pembangunan tempatan dan membina bundle akhir.yang sangat efisien yang pembedahan mengemas kini DOM. Akibatnya, anda dapat menulis aplikasi bercita -cita tinggi dengan ciri -ciri prestasi yang sangat baik. Svelte lebih cepat daripada kerangka yang paling kuat (bertindak balas, vue dan sudut) kerana ia tidak menggunakan dom maya dan pembedahan hanya bahagian yang berubah.
Prasyarat
anda perlu mempunyai beberapa prasyarat, jadi anda boleh mengikuti tutorial ini dengan selesa, seperti:
kebiasaan dengan HTML, CSS, dan JavaScript (ES6),
- node.js dan npm dipasang pada mesin pembangunan anda.
- node.js boleh dipasang dengan mudah dari laman web rasmi atau anda juga boleh menggunakan NVM dengan mudah memasang dan mengurus pelbagai versi nod dalam sistem anda.
Kami akan menggunakan API JSON sebagai sumber berita untuk aplikasi kami, jadi anda perlu mendapatkan kunci API dengan hanya membuat akaun secara percuma dan mengambil perhatian mengenai kunci API anda.
Bermula
Sekarang, mari kita mula membina aplikasi Daily Planet News kami dengan menggunakan alat degit untuk menghasilkan projek svelte.
anda boleh memasang degit secara global pada sistem anda atau menggunakan alat NPX untuk melaksanakannya dari npm. Buka terminal baru dan jalankan arahan berikut:
npx degit sveltejs/template dailyplanetnews
Seterusnya, navigasi di dalam folder projek anda dan jalankan pelayan pembangunan menggunakan arahan berikut:
<span>cd dailyplanetnews </span><span>npm run dev </span>
pelayan dev anda akan mendengar dari alamat http: // localhost: 5000. Jika anda melakukan apa-apa perubahan, mereka akan dibina semula dan dilepaskan secara langsung ke dalam aplikasi berjalan anda.
Buka fail main.js projek anda, dan anda harus mencari kod berikut:
<span>import <span>App</span> from './App.svelte'; </span> <span>const app = new App({ </span> <span>target: document.body, </span> <span>props: { </span> <span>name: 'world' </span> <span>} </span><span>}); </span> <span>export default app; </span>
Ini adalah di mana aplikasi Svelte dibebaskan dengan membuat dan mengeksport contoh komponen akar, secara konvensional dipanggil aplikasi. Komponen mengambil objek dengan sasaran dan atribut prop.
Sasaran mengandungi elemen DOM di mana komponen akan dipasang, dan prop mengandungi sifat yang kami mahu lulus ke komponen aplikasi. Dalam kes ini, ia hanya nama dengan dunia nilai.
Buka fail app.svelte, dan anda harus mencari kod berikut:
<span><span><span><script>></script></span><span> </span></span><span><span> <span>export let name; </span></span></span><span><span></span><span><span></span>></span> </span> <span><span><span><style>></style></span><span> </span></span><span><span> <span>h1 { </span></span></span><span><span> <span>color: purple; </span></span></span><span><span> <span>} </span></span></span><span><span></span><span><span></span>></span> </span> <span><span><span><h1 id="gt">></h1></span>Hello {name}!<span><span></span>></span> </span></span></span></span>
Ini adalah komponen akar permohonan kami. Semua komponen lain akan menjadi anak -anak aplikasi.
Komponen dalam Svelte Gunakan lanjutan .svelte untuk fail sumber, yang mengandungi semua javascript, gaya dan markup untuk komponen.
Eksport Let Nama; Sintaks mencipta komponen komponen yang dipanggil nama. Kami menggunakan interpolasi berubah - {...} - untuk memaparkan nilai yang diluluskan melalui nama prop.
Anda hanya boleh menggunakan JavaScript lama, CSS, dan HTML yang anda kenal untuk membuat komponen Svelte. Svelte juga menambah beberapa sintaks templat ke HTML untuk interpolasi berubah -ubah dan gelung melalui senarai data, dan lain -lain
Oleh kerana ini adalah aplikasi kecil, kita hanya dapat melaksanakan fungsi yang diperlukan dalam komponen aplikasi.
Dalam tag
<span><script> </script></span> <span>export let name; </span> <span>import <span>{ onMount }</span> from "svelte"; </span> <span>const API_KEY = "<your_api_key_here>"; </your_api_key_here></span> <span>const URL = <span>`https://newsapi.org/v2/everything?q=comics&sortBy=publishedAt&apiKey=<span>${API_KEY}</span>`</span>; </span> <span>let articles = []; </span> <span> </span>
onMount adalah kaedah kitaran hayat. Inilah tutorial rasmi mengenai perkara itu:
Setiap komponen mempunyai kitaran hayat yang bermula apabila ia dicipta dan berakhir apabila ia dimusnahkan. Terdapat beberapa fungsi yang membolehkan anda menjalankan kod pada saat -saat penting semasa kitaran hayat itu. Yang anda akan gunakan paling kerap ialah OnMount, yang berjalan selepas komponen pertama kali diberikan kepada Dom.
Seterusnya, mari kita gunakan API Fetch untuk mengambil data dari titik akhir berita dan simpan artikel dalam pembolehubah artikel apabila komponen dipasang di DOM:
npx degit sveltejs/template dailyplanetnews
Oleh kerana kaedah pengambilan () mengembalikan janji JavaScript, kita boleh menggunakan sintaks async/menunggu untuk membuat kod kelihatan segerak dan menghapuskan panggilan balik.
Seterusnya, mari tambahkan markup HTML berikut untuk membuat UI aplikasi kami dan memaparkan data berita:
<span>cd dailyplanetnews </span><span>npm run dev </span>
Kami menggunakan setiap blok untuk gelung melalui artikel berita dan kami memaparkan tajuk, keterangan, url dan urltoimage setiap artikel.
Logo Planet Harian dan tajuk utama dipinjam dari organisasi berita bukan keuntungan yang diilhamkan oleh DC Comics.
Kami akan menggunakan Kalam, fon tulisan tangan yang boleh didapati dari Google Fonts, jadi buka fail awam/index.html dan tambahkan tag berikut:
<span>import <span>App</span> from './App.svelte'; </span> <span>const app = new App({ </span> <span>target: document.body, </span> <span>props: { </span> <span>name: 'world' </span> <span>} </span><span>}); </span> <span>export default app; </span>
Seterusnya, kembali ke fail app.svelte dan tambahkan gaya berikut:
<span><span><span><script>></script></span><span> </span></span><span><span> <span>export let name; </span></span></span><span><span></span><span><span></span>></span> </span> <span><span><span><style>></style></span><span> </span></span><span><span> <span>h1 { </span></span></span><span><span> <span>color: purple; </span></span></span><span><span> <span>} </span></span></span><span><span></span><span><span></span>></span> </span> <span><span><span><h1 id="gt">></h1></span>Hello {name}!<span><span></span>></span> </span></span></span></span>
Ini adalah tangkapan skrin aplikasi berita harian kami:
Setelah membangunkan aplikasi anda, anda boleh membuat berkas pengeluaran dengan menjalankan perintah binaan di terminal anda:
<span><script> </script></span> <span>export let name; </span> <span>import <span>{ onMount }</span> from "svelte"; </span> <span>const API_KEY = "<your_api_key_here>"; </your_api_key_here></span> <span>const URL = <span>`https://newsapi.org/v2/everything?q=comics&sortBy=publishedAt&apiKey=<span>${API_KEY}</span>`</span>; </span> <span>let articles = []; </span> <span> </span>Perintah akan menghasilkan bundle minified dan siap sedia yang anda boleh menjadi tuan rumah pada pelayan hosting pilihan anda.
Mari kita menjadi tuan rumah aplikasi menggunakan ZEIT sekarang.
Zeit Now adalah platform awan untuk laman web dan fungsi tanpa pelayan yang boleh anda gunakan untuk menggunakan projek anda ke .Now.sh atau domain peribadi.
kembali ke terminal anda dan jalankan arahan berikut untuk memasang sekarang CLI:
<span><script> </script></span> <span>// [...] </span> <span>onMount(async function() { </span> <span>const response = await fetch(URL); </span> <span>const json = await response.json(); </span> articles <span>= json["articles"]; </span> <span>}); </span><span> </span>Seterusnya, navigasi ke folder awam dan jalankan perintah sekarang:
<span><span><span><h1 id="gt">></h1></span> </span> <span><span><span><img alt="Projek Aplikasi Svelte: Membina UI Aplikasi Berita Planet '" > src<span>="https://dailyplanetdc.files.wordpress.com/2018/12/cropped-daily-planet-logo.jpg?w=656&h=146"</span> /></span> </span> <span><span><span><p> class<span>="about"</span>></p></span> </span> The Daily Planet is where heroes are born and the story continues. We are proud to report on the planet, daily. <span><span><span></span>></span> </span><span><span><span></span>></span> </span> <span><span><span><div> class<span>="container"</span>> {#each articles as article} <span><span><span><div> class<span>="card"</span>> <span><span><span><img alt="Projek Aplikasi Svelte: Membina UI Aplikasi Berita Planet '" > src<span>="{article.urlToImage}"</span>></span> </span> <span><span><span><div> class<span>="card-body"</span>> <span><span><span><h3 id="gt">></h3></span>{article.title}<span><span></span>></span> </span> <span><span><span><p>></p></span> {article.description} <span><span></span>></span> </span> <span><span><span><a> href<span>="{article.url}"</span>></a></span>Read story<span><span></span>></span> </span> <span><span><span></span></span></span></span></span></span> </div></span>></span> </span> <span><span><span></span></span></span></span> </div></span>></span> </span> {/each} <span><span><span></span></span></span> </div></span>></span> </span></span></span></span>Itu sahaja! Permohonan anda akan digunakan ke awan. Dalam kes kami, ia boleh didapati dari public-kyqab3g5j.now.sh.
anda boleh mencari kod sumber aplikasi ini dari repositori GitHub ini.
Kesimpulan
Dalam tutorial ini, kami membina aplikasi berita mudah menggunakan Svelte. Kami juga melihat apa yang Svelte dan bagaimana untuk membuat projek Svelte menggunakan alat degit dari npm.
anda boleh merujuk kepada dokumen rasmi untuk tutorial terperinci untuk mengetahui tentang setiap ciri Svelte.
Soalan Lazim (Soalan Lazim) Mengenai Membangun Aplikasi Berita dengan Svelte
Apakah faedah utama menggunakan Svelte untuk membina aplikasi berita? yang secara langsung memanipulasi Dom. Apabila membina aplikasi berita, Svelte menawarkan beberapa faedah. Pertama, ia menyediakan kod yang lebih mudah dan bersih, menjadikannya lebih mudah bagi pemaju untuk memahami dan mengekalkan kod. Kedua, aplikasi Svelte sangat berprestasi. Oleh kerana Svelte berjalan pada masa membina, ia menukarkan komponen aplikasi ke dalam kod imperatif yang sangat efisien yang mengemas kini DOM. Ini menghasilkan masa beban yang lebih cepat dan pengalaman pengguna yang lebih lancar. Akhir sekali, Svelte adalah berasaskan komponen, seperti React dan Vue, yang menjadikannya lebih mudah untuk membina antara muka pengguna yang kompleks. > Menambah artikel baru ke aplikasi Svelte News anda melibatkan membuat komponen baru untuk artikel itu dan kemudian mengimportnya ke dalam komponen induk yang berkaitan. Dalam komponen baru, anda boleh menentukan kandungan artikel dan mana -mana metadata yang berkaitan seperti pengarang dan tarikh yang diterbitkan. Sebaik sahaja komponen dibuat, anda boleh mengimportnya ke dalam komponen induk menggunakan pernyataan import. Kemudian, anda boleh menambahkannya ke kaedah render komponen induk di mana anda mahu artikel muncul. Aplikasi berita Svelte melibatkan membuat komponen carian dan menambah pengurusan negeri untuk menjejaki input carian. Anda boleh menggunakan ciri reaktiviti terbina dalam Svelte untuk mengemas kini artikel yang dipaparkan berdasarkan input carian. Apabila input carian berubah, anda boleh menapis senarai artikel untuk hanya memasukkan yang sepadan dengan input carian. Aplikasi Svelte boleh dicapai dengan menambahkan harta kategori kepada setiap artikel. Harta ini kemudiannya boleh digunakan untuk menapis artikel berdasarkan kategori yang dipilih. Anda boleh membuat komponen kategori yang memaparkan senarai kategori. Apabila kategori dipilih, anda boleh mengemas kini artikel yang dipaparkan untuk hanya termasuk dalam kategori yang dipilih. Aplikasi Berita Svelte boleh dilakukan menggunakan pelbagai kaedah, seperti menggunakan Perkhidmatan Pengesahan Firebase atau pelayan backend dengan JWT (JSON Web Tokens). Anda perlu membuat komponen pengesahan di mana pengguna boleh memasukkan kelayakan log masuk mereka. Setelah penyerahan borang, kelayakan ini dihantar ke Perkhidmatan Pengesahan atau Backend Server untuk pengesahan. Sekiranya kelayakan sah, pengguna disahkan dan diberikan akses kepada aplikasi.
Bagaimana saya boleh membuat aplikasi berita Svelte saya responsif?
Membuat aplikasi Berita Svelte Responsif melibatkan menggunakan pertanyaan media CSS untuk menyesuaikan susun atur aplikasi berdasarkan saiz skrin. Svelte membolehkan anda menulis kod CSS dalam fail yang sama dengan kod JavaScript dan HTML anda, menjadikannya lebih mudah untuk gaya komponen anda. Anda boleh menentukan gaya yang berbeza untuk saiz skrin yang berbeza untuk memastikan aplikasi anda kelihatan baik pada semua peranti.
Bagaimana saya boleh menambah pemberitahuan push ke aplikasi berita Svelte saya? App boleh dilakukan menggunakan perkhidmatan seperti pemesejan awan Firebase. Anda perlu mendaftarkan aplikasi anda dengan perkhidmatan dan kemudian tambahkan kod yang diperlukan untuk aplikasi anda untuk mengendalikan pemberitahuan push menerima. Ini biasanya melibatkan menambah pekerja perkhidmatan ke aplikasi anda yang mendengarkan untuk peristiwa push dan memaparkan pemberitahuan apabila seseorang diterima. Bahagian komen kepada aplikasi berita Svelte melibatkan membuat komponen komen dan menambah pengurusan negeri untuk mengesan komen. Anda boleh menggunakan ciri reaktiviti terbina dalam Svelte untuk mengemas kini komen berdasarkan input pengguna. Apabila pengguna mengemukakan komen, anda boleh menambahkannya ke senarai komen dan mengemas kini komen yang dipaparkan. Aplikasi berita Svelte boleh melibatkan beberapa strategi. Pertama, anda boleh menggunakan alat terbina dalam Svelte untuk pemisahan kod dan pemuatan malas untuk hanya memuatkan kod yang diperlukan untuk paparan semasa. Kedua, anda boleh mengoptimumkan imej anda dan aset statik lain untuk mengurangkan saiz fail mereka. Akhir sekali, anda boleh menggunakan pekerja perkhidmatan untuk cache aset aplikasi anda dan melayani mereka dari cache, mengurangkan masa beban. App boleh dilakukan menggunakan pelbagai kaedah, seperti menggunakan perkhidmatan hosting tapak statik seperti Netlify atau Vercel, atau platform awan seperti Google Cloud atau AWS. Anda perlu membina aplikasi anda untuk pengeluaran menggunakan arahan NPM Run Build, yang membuat folder awam dengan aplikasi yang disusun anda. Folder ini kemudiannya boleh dimuat naik ke perkhidmatan hosting atau platform awan anda.
Atas ialah kandungan terperinci Projek Aplikasi Svelte: Membina UI Aplikasi Berita Planet '. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

JavaScript berjalan dalam penyemak imbas dan persekitaran Node.js dan bergantung pada enjin JavaScript untuk menghuraikan dan melaksanakan kod. 1) menjana pokok sintaks abstrak (AST) di peringkat parsing; 2) menukar AST ke bytecode atau kod mesin dalam peringkat penyusunan; 3) Laksanakan kod yang disusun dalam peringkat pelaksanaan.

Trend masa depan Python dan JavaScript termasuk: 1. Kedua -duanya akan terus mengembangkan senario aplikasi dalam bidang masing -masing dan membuat lebih banyak penemuan dalam prestasi.

Kedua -dua pilihan Python dan JavaScript dalam persekitaran pembangunan adalah penting. 1) Persekitaran pembangunan Python termasuk Pycharm, Jupyternotebook dan Anaconda, yang sesuai untuk sains data dan prototaip cepat. 2) Persekitaran pembangunan JavaScript termasuk node.js, vscode dan webpack, yang sesuai untuk pembangunan front-end dan back-end. Memilih alat yang betul mengikut keperluan projek dapat meningkatkan kecekapan pembangunan dan kadar kejayaan projek.

Ya, teras enjin JavaScript ditulis dalam C. 1) Bahasa C menyediakan prestasi yang efisien dan kawalan asas, yang sesuai untuk pembangunan enjin JavaScript. 2) Mengambil enjin V8 sebagai contoh, terasnya ditulis dalam C, menggabungkan kecekapan dan ciri-ciri berorientasikan objek C. 3) Prinsip kerja enjin JavaScript termasuk parsing, penyusun dan pelaksanaan, dan bahasa C memainkan peranan penting dalam proses ini.

JavaScript adalah di tengah -tengah laman web moden kerana ia meningkatkan interaktiviti dan dinamik laman web. 1) Ia membolehkan untuk menukar kandungan tanpa menyegarkan halaman, 2) memanipulasi laman web melalui Domapi, 3) menyokong kesan interaktif kompleks seperti animasi dan drag-and-drop, 4) mengoptimumkan prestasi dan amalan terbaik untuk meningkatkan pengalaman pengguna.

C dan JavaScript mencapai interoperabilitas melalui webassembly. 1) Kod C disusun ke dalam modul WebAssembly dan diperkenalkan ke dalam persekitaran JavaScript untuk meningkatkan kuasa pengkomputeran. 2) Dalam pembangunan permainan, C mengendalikan enjin fizik dan rendering grafik, dan JavaScript bertanggungjawab untuk logik permainan dan antara muka pengguna.

JavaScript digunakan secara meluas di laman web, aplikasi mudah alih, aplikasi desktop dan pengaturcaraan sisi pelayan. 1) Dalam pembangunan laman web, JavaScript mengendalikan DOM bersama -sama dengan HTML dan CSS untuk mencapai kesan dinamik dan menyokong rangka kerja seperti JQuery dan React. 2) Melalui reaktnatif dan ionik, JavaScript digunakan untuk membangunkan aplikasi mudah alih rentas platform. 3) Rangka kerja elektron membolehkan JavaScript membina aplikasi desktop. 4) Node.js membolehkan JavaScript berjalan di sisi pelayan dan menyokong permintaan serentak yang tinggi.

Python lebih sesuai untuk sains data dan automasi, manakala JavaScript lebih sesuai untuk pembangunan front-end dan penuh. 1. Python berfungsi dengan baik dalam sains data dan pembelajaran mesin, menggunakan perpustakaan seperti numpy dan panda untuk pemprosesan data dan pemodelan. 2. Python adalah ringkas dan cekap dalam automasi dan skrip. 3. JavaScript sangat diperlukan dalam pembangunan front-end dan digunakan untuk membina laman web dinamik dan aplikasi satu halaman. 4. JavaScript memainkan peranan dalam pembangunan back-end melalui Node.js dan menyokong pembangunan stack penuh.


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

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

Artikel Panas

Alat panas

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

EditPlus versi Cina retak
Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

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.

SecLists
SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma
