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

目錄
>常見問題(常見問題解答)有關(guān)使用Svelte
>使用Svelte構(gòu)建新聞應用程序的關(guān)鍵好處是什麼?
>如何使我的Svelte News應用程序響應?
>
首頁 web前端 js教程 Svelte App項目:構(gòu)建每日星球的新聞應用程序UI

Svelte App項目:構(gòu)建每日星球的新聞應用程序UI

Feb 14, 2025 am 10:17 AM

Svelte App項目:構(gòu)建每日星球的新聞應用程序UI

Svelte是一個新的JavaScript UI庫,在許多方面與React等現(xiàn)代UI庫相似。一個重要的區(qū)別是,它不使用虛擬DOM的概念。 在本教程中,我們將通過構(gòu)建靈感來自《超人世界》的虛構(gòu)報紙的啟發(fā)來介紹Svelte。

鑰匙要點

Svelte是一個新的JavaScript UI庫,不使用虛擬DOM,使其比React,Vue和Angular等最強大的框架更快。在構(gòu)建應用程序時,它將必要的工作轉(zhuǎn)移到開發(fā)機上的編譯時間階段。 該教程提供了一個逐步指南,以構(gòu)建靈感來自《每日星球》的新聞申請,這是來自超人世界的虛構(gòu)報紙。這包括初始化一個Svelte項目,運行本地開發(fā)服務器並構(gòu)建最終捆綁包。

>教程還涵蓋了DEGIT工具來生成Svelte項目,從新聞端點獲取數(shù)據(jù)並為應用程序創(chuàng)建UI。

開發(fā)應用程序後,可以通過在終端中運行構(gòu)建命令並使用ZEIT託管應用程序,即現(xiàn)在是網(wǎng)站和無服務器功能的雲(yún)平臺。

    關(guān)於Svelte
  • Svelte使用一種新方法來構(gòu)建用戶界面。 Suvte不用在瀏覽器中進行必要的工作,而是將其起作用的合理時間階段轉(zhuǎn)移到開發(fā)機器上時發(fā)生的編譯時階段。
  • > 簡而言之,這就是Svelte的工作原理(如官方博客中所述):
  • Svelte在
  • >構(gòu)建時間
  • 上運行,將組件轉(zhuǎn)換為高效
  • 命令
  • 代碼,該代碼可以手術(shù)更新DOM。結(jié)果,您可以編寫具有出色性能特徵的雄心勃勃的應用程序。
>我們將學習諸如Svelte組件之類的基本概念以及如何在數(shù)據(jù)陣列上獲取和迭代。我們還將學習如何初始化一個Svelte項目,運行本地開發(fā)服務器並構(gòu)建最終的捆綁包。 >先決條件

您需要有一些先決條件,因此您可以舒適地遵循此教程,例如:

熟悉HTML,CSS和JavaScript(ES6)

> node.js和npm安裝在您的開發(fā)機上。 可以從官方網(wǎng)站上輕鬆安裝node.js,也可以使用NVM輕鬆安裝和管理系統(tǒng)中的節(jié)點的多個版本。 >

>我們將使用JSON API作為我們應用的新聞來源,因此您需要通過免費創(chuàng)建一個帳戶並註意您的API密鑰來獲取API密鑰。 >

入門

>現(xiàn)在,讓我們通過使用DEGIT工俱生成Svelte Projects來構(gòu)建我們的每日星球新聞應用程序。

>您可以在系統(tǒng)上全球安裝DEGIT,也可以使用NPX工具從NPM執(zhí)行它。打開一個新終端並運行以下命令:

接下來,在項目的文件夾中導航,並使用以下命令運行開發(fā)服務器:>
npx degit sveltejs/template dailyplanetnews

>您的開發(fā)服務器將從http:// localhost:5000地址從聆聽。如果您進行任何更改,它們將被重建並實時加載到您的運行應用中。

>打開項目的main.js文件,您應該找到以下代碼:>
<span>cd dailyplanetnews
</span><span>npm run dev
</span>

這是通過創(chuàng)建和導出root組件的實例(通常稱為應用程序)來引導Svelte應用程序的地方。該組件採用帶有目標和props屬性的對象。

>目標包含將安裝組件的DOM元素,並且Props包含要傳遞給App組件的屬性。在這種情況下,它只是一個名稱,帶有

> world
<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>
value。

>

>打開app.svelte文件,您應該找到以下代碼:

> 這是我們應用程序的根組成部分。所有其他組件將是App的孩子。

> Svelte中的組件使用.svelte擴展名的源文件,其中包含組件的所有JavaScript,樣式和標記。

>導出名稱;語法創(chuàng)建一個稱為名稱的組件道具。我們使用變量插值 - {...} - 通過名稱prop。
<span><span><span><script</span>></span><span>
</span></span><span><span>    <span>export let name;
</span></span></span><span><span></span><span><span></script</span>></span>
</span>
<span><span><span><style</span>></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></style</span>></span>
</span>
<span><span><span><h1</span>></span>Hello {name}!<span><span></h1</span>></span>
</span>
顯示傳遞的值

>您可以簡單地使用熟悉的普通舊JavaScript,CSS和HTML來創(chuàng)建Svelte組件。 Svelte還向HTML添加了一些模板語法,以進行可變的插值和通過數(shù)據(jù)列表等循環(huán)。

由於這是一個小應用程序,我們可以簡單地在應用程序組件中實現(xiàn)所需的功能。

>在<script>標籤中,從“ svelte”中導入onmount()方法,並定義api_key,文章和URL變量,這些變量將保存新聞API密鑰,獲取的新聞文章和提供數(shù)據(jù)的端點: </script>

> onMount是一種生命週期方法。這是官方教程對此所說的:

每個組件都有一個

>生命週期

在創(chuàng)建並在被破壞時結(jié)束時開始。有少數(shù)功能使您可以在該生命週期期間的關(guān)鍵時刻運行代碼。您最常使用的是OnMount,該元件首先渲染到DOM。

接下來,讓我們使用fetch API從新聞端點獲取數(shù)據(jù),並在將組件安裝在DOM中時將文章存儲在文章變量中:

npx degit sveltejs/template dailyplanetnews
由於fetch()方法返回JavaScript承諾,因此我們可以使用異步/等待語法使代碼看起來同步並消除回調(diào)。

接下來,讓我們添加以下HTML標記以創(chuàng)建我們的應用程序的UI並顯示新聞數(shù)據(jù):>

>我們使用每個塊來循環(huán)到新聞文章,並顯示每篇文章的標題,描述,URL和URL圖像。

<span>cd dailyplanetnews
</span><span>npm run dev
</span>
>每日星球徽標和標題是從這個受DC Comics啟發(fā)的非營利性新聞機構(gòu)借來的。

我們將使用Google字體可提供的手寫字體Kalam,因此請打開public/index.html文件,並添加以下標籤:>

接下來,返回到app.svelte文件並添加以下樣式:>

這是我們每日新聞應用程序的屏幕截圖:

<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>

<span><span><span><script</span>></span><span>
</span></span><span><span>    <span>export let name;
</span></span></span><span><span></span><span><span></script</span>></span>
</span>
<span><span><span><style</span>></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></style</span>></span>
</span>
<span><span><span><h1</span>></span>Hello {name}!<span><span></h1</span>></span>
</span>
用於生產(chǎn)的建築物

開發(fā)應用程序後,您可以通過在終端中運行構(gòu)建命令來創(chuàng)建生產(chǎn)捆綁包:

Svelte App項目:構(gòu)建每日星球的新聞應用程序UI

該命令將產(chǎn)生一個縮小且可生產(chǎn)的捆綁包,您可以在首選的託管服務器上託管。

>現(xiàn)在讓我們立即使用Zeit託管應用程序。

> zeit現(xiàn)在是一個用於網(wǎng)站和無服務器功能的雲(yún)平臺,您可以用來將項目部署到.now.sh或個人域。
<span><script>
</span>    <span>export let name;
</span>
    <span>import <span>{ onMount }</span> from "svelte";
</span>
    <span>const API_KEY = "<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></script>
</span>
返回您的終端,然後運行以下命令以立即安裝CLI:>

接下來,導航到public文件夾並運行現(xiàn)在的命令:>

就是這樣!您的應用程序?qū)⒉渴鸬诫?yún)中。在我們的情況下,可以從public-kyqab3g5j.now.sh。

您可以從此GitHub存儲庫中找到此應用程序的源代碼。 結(jié)論 在本教程中,我們使用Svelte構(gòu)建了一個簡單的新聞應用程序。我們還看到了什麼是Svelte,以及如何使用NPM的DEGIT工具來創(chuàng)建一個Svelte項目。 。

>您可以參考官方文檔以獲取詳細的教程,以了解每個Svelte功能。

>常見問題(常見問題解答)有關(guān)使用Svelte

構(gòu)建新聞應用程序的問題(常見問題解答)

>使用Svelte構(gòu)建新聞應用程序的關(guān)鍵好處是什麼?

svelte是現(xiàn)代的JavaScript編譯器,它允許您編寫易於理解的JavaScript代碼,然後將其編譯為高效的命令式代碼直接操縱DOM。構(gòu)建新聞應用程序時,Svelte提供了一些好處。首先,它提供了一個更簡單,更清潔的代碼,使開發(fā)人員更容易理解和維護代碼。其次,Svelte應用程序具有很高的性能。由於Svelte在構(gòu)建時間運行,因此將應用程序組件轉(zhuǎn)換為更新DOM的高效命令代碼。這導致加載時間更快,用戶體驗更順暢。最後,像React和Vue一樣,Svelte是基於組件的,這使得構(gòu)建複雜的用戶界面變得更加容易。

>如何將新文章添加到使用Svelte構(gòu)建的新聞應用程序? >在您的Svelte新聞應用程序中添加新文章涉及為文章創(chuàng)建一個新組件,然後將其導入相關(guān)的父組件。在新組件中,您可以定義文章的內(nèi)容和任何相關(guān)的元數(shù)據(jù),例如作者和發(fā)布日期。創(chuàng)建組件後,您可以使用導入語句將其導入到父組件中。然後,您可以將其添加到父母組件的渲染方法中。 Svelte新聞應用程序涉及創(chuàng)建搜索組件並添加狀態(tài)管理以跟蹤搜索輸入。您可以使用Svelte的內(nèi)置反應性功能來根據(jù)搜索輸入來更新顯示的文章。當搜索輸入更改時,您可以過濾文章列表,以包括匹配搜索輸入的文章列表。

我如何在我的Svelte應用程序中對新聞文章進行分類?可以通過在每個文章中添加類別屬性來實現(xiàn)Svelte應用程序。然後可以使用此屬性根據(jù)所選類別過濾文章。您可以創(chuàng)建一個顯示類別列表的類別組件。當選擇類別時,您可以將顯示的文章更新為僅包含所選類別中的文章。

>如何將用戶身份驗證添加到我的Svelte News應用程序?

> Svelte新聞應用程序可以使用各種方法進行,例如使用Firebase Authentication服務或JWT(JSON Web令牌)的後端服務器。您需要創(chuàng)建一個身份驗證組件,用戶可以在其中輸入其登錄憑據(jù)。表單提交後,這些憑據(jù)將發(fā)送到身份驗證服務或後端服務器進行驗證。如果憑據(jù)有效,則對用戶進行身份驗證並授予對應用程序的訪問

>如何使我的Svelte News應用程序響應?

>製作Svelte News應用程序響應式響應涉及使用CSS媒體查詢根據(jù)屏幕尺寸調(diào)整應用程序的佈局。 Svelte允許您在與JavaScript和HTML代碼相同的文件中編寫CSS代碼,從而更容易設置組件。您可以為不同的屏幕尺寸定義不同樣式的樣式,以確保您的應用在所有設備上看起來都不錯。

如何在我的Svelte News應用程序中添加推送通知?

>向Svelte News添加推送通知可以使用諸如Firebase Cloud Messaging之類的服務完成應用。您需要在服務上註冊您的應用程序,然後將必要的代碼添加到您的應用程序中以處理接收推送通知。這通常涉及將服務工作者添加到您的應用程序中,該應用程序會在收到一個時聽取推送事件並顯示通知。

>

>如何將評論部分添加到我的Svelte News App? Svelte新聞應用程序的評論部分涉及創(chuàng)建評論組件並添加狀態(tài)管理以跟蹤評論。您可以使用Svelte的內(nèi)置反應性功能來根據(jù)用戶輸入來更新評論。當用戶提交註釋時,您可以將其添加到註釋列表中並更新顯示的註釋。

>

>如何優(yōu)化Svelte News應用程序的性能?一個苗條的新聞應用程序可能涉及多種策略。首先,您可以使用Svelte的內(nèi)置工具進行代碼分配和懶惰加載,僅加載當前視圖所需的代碼。其次,您可以優(yōu)化圖像和其他靜態(tài)資產(chǎn)以減少其文件大小。最後,您可以使用服務工作者來緩存您的應用程序資產(chǎn)並將其從緩存中提供服務,從而減少了加載時間。

>

>如何部署我的Svelte News App?

可以使用各種方法來完成應用程序,例如使用Netlify或Vercel(例如Netlify或Vercel)的靜態(tài)站點託管服務,或者使用Google Cloud或AWS等雲(yún)平臺。您需要使用NPM Run Build Command構(gòu)建應用程序,該命令使用您的編譯應用程序創(chuàng)建一個公共文件夾。然後可以將此文件夾上傳到您的託管服務或云平臺。

>

以上是Svelte App項目:構(gòu)建每日星球的新聞應用程序UI的詳細內(nèi)容。更多資訊請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願投稿,版權(quán)歸原作者所有。本站不承擔相應的法律責任。如發(fā)現(xiàn)涉嫌抄襲或侵權(quán)的內(nèi)容,請聯(lián)絡admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅(qū)動的應用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

JavaScript與Java:您應該學到哪種語言? JavaScript與Java:您應該學到哪種語言? Jun 10, 2025 am 12:05 AM

javascriptisidealforwebdevelogment,whilejavasuitslarge-scaleapplicationsandandandroiddevelopment.1)javascriptexceleatingingingingingingingbeatingwebexperienceswebexperienceswebexperiencesandfull-stackdeevermentwithnode.js.2)

在JavaScript中使用哪些評論符號:一個明確的解釋 在JavaScript中使用哪些評論符號:一個明確的解釋 Jun 12, 2025 am 10:27 AM

在JavaScript中,選擇單行註釋(//)還是多行註釋(//)取決於註釋的目的和項目需求:1.使用單行註釋進行快速、內(nèi)聯(lián)的解釋;2.使用多行註釋進行詳細的文檔說明;3.保持註釋風格的一致性;4.避免過度註釋;5.確保註釋與代碼同步更新。選擇合適的註釋風格有助於提高代碼的可讀性和可維護性。

JavaScript評論的最終指南:增強代碼清晰度 JavaScript評論的最終指南:增強代碼清晰度 Jun 11, 2025 am 12:04 AM

是的,javascriptcommentsarenectary和shouldshouldshouldseffectional.1)他們通過codeLogicAndIntentsgudedepleders,2)asevitalincomplexprojects,和3)handhanceClaritywithOutClutteringClutteringThecode。

Java vs. JavaScript:清除混亂 Java vs. JavaScript:清除混亂 Jun 20, 2025 am 12:27 AM

Java和JavaScript是不同的編程語言,各自適用於不同的應用場景。 Java用於大型企業(yè)和移動應用開發(fā),而JavaScript主要用於網(wǎng)頁開發(fā)。

JavaScript評論:簡短說明 JavaScript評論:簡短說明 Jun 19, 2025 am 12:40 AM

JavascriptconcommentsenceenceEncorenceEnterential gransimenting,reading and guidingCodeeXecution.1)單inecommentsareusedforquickexplanations.2)多l(xiāng)inecommentsexplaincomplexlogicorprovideDocumentation.3)

掌握JavaScript評論:綜合指南 掌握JavaScript評論:綜合指南 Jun 14, 2025 am 12:11 AM

評論arecrucialinjavascriptformaintainingclarityclarityandfosteringCollaboration.1)heelpindebugging,登機,andOnderStandingCodeeVolution.2)使用林格forquickexexplanations andmentmentsmmentsmmentsmments andmmentsfordeffordEffordEffordEffordEffordEffordEffordEffordEddeScriptions.3)bestcractices.3)bestcracticesincracticesinclud

JavaScript數(shù)據(jù)類型:深度潛水 JavaScript數(shù)據(jù)類型:深度潛水 Jun 13, 2025 am 12:10 AM

JavaScripthasseveralprimitivedatatypes:Number,String,Boolean,Undefined,Null,Symbol,andBigInt,andnon-primitivetypeslikeObjectandArray.Understandingtheseiscrucialforwritingefficient,bug-freecode:1)Numberusesa64-bitformat,leadingtofloating-pointissuesli

JavaScript與Java:開發(fā)人員的全面比較 JavaScript與Java:開發(fā)人員的全面比較 Jun 20, 2025 am 12:21 AM

JavaScriptIspreferredforredforwebdevelverment,而Javaisbetterforlarge-ScalebackendsystystemsandSandAndRoidApps.1)JavascriptexcelcelsincreatingInteractiveWebexperienceswebexperienceswithitswithitsdynamicnnamicnnamicnnamicnnamicnemicnemicnemicnemicnemicnemicnemicnemicnddommanipulation.2)

See all articles