国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

React 學習之 Hello World

這篇具有很好參考價值的文章主要介紹了React 學習之 Hello World。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

React 學習之 Hello World

React 簡介

React是一個用于構建用戶界面的JavaScript庫,由Facebook開發(fā)并維護。React通過聲明式的方式來構建UI,使得代碼更易于理解和測試。React的核心概念包括組件(Component)和虛擬DOM(Virtual DOM)。

組件:在React中,UI被構建為組件的集合。組件是封裝了HTML、CSS和JavaScript代碼的可重用單元。它們可以是函數或類,接受輸入(稱為“props”)并返回React元素樹,這些元素樹描述了用戶界面在某一時刻的外觀。

虛擬DOM:React使用虛擬DOM來提高性能。當組件的狀態(tài)或屬性發(fā)生變化時,React會創(chuàng)建一個新的虛擬DOM樹,并將其與之前的樹進行比較。然后,React計算出差異并僅將這些差異應用到實際的DOM中,從而實現(xiàn)高效的UI更新。

React的生態(tài)系統(tǒng)非常豐富,包括React Native(用于構建原生移動應用的框架)、Redux(用于管理應用狀態(tài)的庫)以及許多其他工具和庫。這使得React成為構建復雜Web和移動應用的強大工具。

React的優(yōu)點包括:

組件化:通過將UI拆分為獨立的、可重用的組件,可以提高代碼的可維護性和可測試性。
聲明式:React使用聲明式語法來描述UI,這使得代碼更易于閱讀和理解。
高效性能:虛擬DOM和React的更新策略使得應用能夠高效地響應狀態(tài)變化。
靈活性:React可以與多種其他庫和工具配合使用,以滿足不同項目的需求。
然而,React也有其局限性,例如學習曲線較陡峭,需要一定的JavaScript基礎才能有效使用。此外,對于大型項目,可能需要額外的工具和庫來管理狀態(tài)和路由等復雜問題。

總之,React是一個強大的JavaScript庫,適用于構建各種規(guī)模和復雜度的Web和移動應用。通過掌握React的核心概念和生態(tài)系統(tǒng)中的工具,開發(fā)者可以創(chuàng)建出高效、可維護且用戶友好的界面。

React的核心概念是什么

React的核心概念主要包括以下幾個方面:

  1. 組件(Components):
    • React中構建用戶界面的基本單位是組件。組件可以看作是一個獨立的、可復用的代碼塊,它接受輸入(通常是以“props”形式傳遞的數據)并返回React元素樹,這些元素樹描述了用戶界面的一部分。
    • 組件可以是函數組件或類組件。函數組件接受props并返回JSX元素;類組件則繼承自React.Component類,具有更多的生命周期方法和狀態(tài)管理功能。
  2. JSX(JavaScript XML):
    • JSX是React中用于描述用戶界面的一種語法擴展。它允許我們在JavaScript代碼中編寫類似HTML的結構,并在編譯時轉換成React元素。JSX使得組件的代碼更加直觀和易于理解。
  3. 虛擬DOM(Virtual DOM):
    • React使用虛擬DOM來提高應用的性能。當組件的狀態(tài)或屬性發(fā)生變化時,React會創(chuàng)建一個新的虛擬DOM樹,并與之前的虛擬DOM樹進行比較。通過比較這兩個樹,React能夠計算出最小的DOM操作來更新實際的DOM,從而實現(xiàn)高效的UI更新。
  4. 狀態(tài)(State)和屬性(Props):
    • 狀態(tài)是組件內部的數據,它決定了組件的渲染輸出。狀態(tài)是私有的,并且只能通過組件內部的方法(如setState)來更新。
    • 屬性是父組件傳遞給子組件的數據。子組件通過props接收這些數據,并使用它們來渲染輸出。屬性是只讀的,子組件不能修改它們。
  5. 生命周期方法(Lifecycle Methods):
    • 類組件具有一系列的生命周期方法,這些方法在組件的不同階段(如掛載、更新、卸載)被調用。生命周期方法允許開發(fā)者在組件的不同階段執(zhí)行特定的邏輯,如數據獲取、副作用處理等。
  6. 鉤子(Hooks):
    • Hooks是React 16.8版本中引入的新特性,它們允許開發(fā)者在不編寫類的情況下使用state以及其他的React特性。通過使用鉤子,函數組件可以擁有與類組件相同的功能,同時保持代碼的簡潔和可維護性。

這些核心概念共同構成了React的基礎,使得開發(fā)者能夠高效地構建出復雜且響應式的用戶界面。通過掌握這些概念,開發(fā)者可以充分利用React的優(yōu)勢來創(chuàng)建出高質量的Web應用。文章來源地址http://www.zghlxwxcb.cn/news/detail-844265.html

React 示例

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Hello World</title>

    <!-- 引入React 的核心庫 -->
    <script src="script/react.development.js"></script>
    <!-- 引入React 的DOM庫 -->
    <script src="script/react-dom.development.js"></script>
</head>

<body>
    <div id="root"></div>
    <script>
        /*
        https://unpkg.com/react@18.2.0/umd/react.development.js
        https://unpkg.com/react-dom@18.2.0/umd/react-dom.development.js
        */
        // React 就是用來代替DOM的

        // // 通過DOM向頁面中添加一個div
        // // 創(chuàng)建一個div
        // const div = document.createElement('div'); // 創(chuàng)建一個DOM元素
        // // 向div中添加內容
        // div.innerText = '我是一個div';
        // // 獲取頁面中的root節(jié)點
        // const root = document.getElementById('root');
        // // 將div添加到root節(jié)點中
        // root.appendChild(div);

        // 通過React向頁面中添加一個div
        /*
        
        React.createElement()
            - 用來創(chuàng)建一個React元素
            - 參數1:表示創(chuàng)建元素的類型,比如div、p、span等 元素名(組件名)
            - 參數2:表示創(chuàng)建元素的屬性,比如className、id等 元素中的屬性
            - 參數3:表示創(chuàng)建元素的文本內容 元素的子元素(內容)
            - 返回值:表示創(chuàng)建的React元素
        */
        const div = React.createElement('div', {}, '我是React創(chuàng)建的div'); // 創(chuàng)建一個 React 元素
        // 獲取頁面中的root節(jié)點
        const root = document.getElementById('root');
        // 獲取根元素對應的React元素
        // ReactDOM.createRoot()
        // - 用來創(chuàng)建一個React根元素
        // - createRoot 允許在瀏覽器的 DOM 節(jié)點中創(chuàng)建根節(jié)點以顯示 React 組件。
        // - 參數1:表示創(chuàng)建的根元素對應的DOM元素
        // - createRoot 返回一個帶有兩個方法的的對象,這兩個方法是:render 和 unmount。
        // https://zh-hans.react.dev/reference/react-dom/client/createRoot
        const react_root = ReactDOM.createRoot(root);
        // 將div渲染到根元素中
        // root.render(reactNode) 
        // 調用 root.render 以將一段 JSX(“React 節(jié)點”)在 React 的根節(jié)點中渲染為 DOM 節(jié)點并顯示。
        // https://zh-hans.react.dev/reference/react-dom/client/createRoot#root-render
        react_root.render(div);

    </script>
</body>

</html>

參考

  • React 官網
  • React 中文網
  • React 中文文檔

到了這里,關于React 學習之 Hello World的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Qt: Hello world

    Qt: Hello world

    0. Qt 可以構建跨平臺的ui項目. 走一波windows下Hello world 1.下載QT creator 當下版本是10了. 下載速度極慢. 需要30G的硬盤空間. 2.安裝成功后,開始菜單會產生如下效果: 3. 運行QT creator10.0.1(community), 如下: 4. 點擊:創(chuàng)建項目 4.1?無需,理解顯示的內容,選第一個就行 4.2 注意路徑也需要自己

    2024年02月11日
    瀏覽(23)
  • RabbitMQ ---- Hello World

    RabbitMQ ---- Hello World

    本節(jié)使用 Java 編寫兩個程序。發(fā)送單個消息的生產者和接收消息并打印出來的消費者。 運行程序 查看管理頁面

    2024年02月16日
    瀏覽(17)
  • ROS Hello World

    ROS Hello World

    ROS 系列學習教程(總目錄) 萬物始于Hello World,為了體驗ROS,使用Hello World介紹ROS的簡單使用。 首先需要創(chuàng)建工程,流程為: 創(chuàng)建工作空間目錄(即工程根目錄,注意此時還不是ROS工作空間,只是一個目錄) 初始化工作空間(即把當前目錄初始化為一個ROS工作空間) 創(chuàng)建功能

    2024年02月06日
    瀏覽(17)
  • java 輸出hello world

    在 Java 中,可以使用 System.out.println 來輸出 \\\"hello world\\\"。 例如: 在這段代碼中, System.out.println 會將字符串 \\\"hello world\\\" 輸出到控制臺。 注意: 在 Java 中,類名的首字母必須大寫。 main 方法是程序的入口點,必須要有這個方法才能運行程序。 `

    2024年02月10日
    瀏覽(23)
  • C++打印hello world

    首先我們要知道: C++中有一個很重要的東西,那就是面向對象,其中,C++中的打印和輸入都是一個對象,而不是像C一樣是一個函數,所以打印和輸入都有一定的區(qū)別 打印是C++最基礎的東西,下面我們先放代碼,再逐條分析 首先是程序的入口:主函數。他先對于C有一定的區(qū)別

    2024年02月02日
    瀏覽(26)
  • C++輸出Hello,World

    在 C 語言中輸出 \\\"Hello, World\\\" 可以使用下面的代碼: #include stdio.h int main() { printf(\\\"Hello, Worldn\\\"); return 0; } 代碼的意思是:首先使用 #include stdio.h 告訴編譯器我們要使用輸入/輸出函數,然后定義一個名為 main 的函數,在函數中使用 printf 函數來輸出字符串 \\\"Hello, World\\\",最后使用

    2024年02月07日
    瀏覽(20)
  • Dart 入門Hello world

    Dart 入門Hello world

    1、下載Dart sdk IntelliJ Android Studio | Dart 2、安裝Dart 插件 3、安裝后重啟IDEA,創(chuàng)建Dart項目 ? 4、創(chuàng)建dart文件 5、編寫函數: ? ?6、運行: ? 官網學習:Dart 語言開發(fā)文檔 | Dart

    2024年02月12日
    瀏覽(22)
  • SpringBoot-Hello World

    SpringBoot-Hello World

    創(chuàng)建Springboot工程,并勾選web開發(fā)相關依賴 定義HelloController類,添加方法hello,并添加相關注釋 運行測試 幾個注意的點: Name:基本上不用管,會根據下面的Arifact變更 Loaction:存儲地址 Language:Java項目就選java唄 Type:我這里選的是Maven Group:域名反寫(例如:com.taob),跟公司走

    2024年02月13日
    瀏覽(11)
  • 用Rust打印hello world!

    用Rust打印hello world!

    桌面新建1個名為 rustDemo 的文件夾(文件夾名字隨便?。?打開新建的文件夾,在地址輸入欄輸入 cmd ?按回車鍵進入命令行窗口 打開編譯器,按 Ctrl + S ,保存文件到 rustDemo 文件夾中,保存的文件我取名為 hello_world.rs 。文件名是隨便取的,但是后綴一定要是 .rs 回到編譯器中,

    2024年02月10日
    瀏覽(21)
  • 【Express.js】Hello World

    本節(jié)我們將創(chuàng)建并運行我們的第一個express.js項目,并使用最簡單的請求響應 本書系統(tǒng)環(huán)境為 windows10 64Bit 請事先在你的開發(fā)環(huán)境中安裝 Node.js ,本書使用的是 node v16.17.1 推薦使用 VsCode 作為開發(fā)工具,有良好的代碼提示功能 事先安裝一個api調試工具,如 postman , apipost 等 創(chuàng)建

    2024年02月09日
    瀏覽(47)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包