幫助您瞭解和建立ReactJS應用的快速指南
演示瞭如何使用“create-react-app”CLI建立一個簡單的React應用程式並解釋專案結構。
安裝NodeJS(如果尚未安裝)
由於使用節點包管理器(npm)下載了React Required for React,因此需要NodeJS。請參閱https://nodejs.org/en/以安裝NodeJS。
安裝create-react-app節點包
create-react-app節點包有助於設定React專案。使用以下命令全域性安裝create react-app節點包。
npm install -g create-react-app
建立專案
可以使用create-react-app建立專案。使用以下命令建立專案。
npx create-react-app first-react-app
first-react-app是應用程式的名稱。上面的命令建立了一個名為first-react-app的資料夾,它是專案資料夾。要測試是否已正確設定所有內容,請轉到專案資料夾並使用以下命令啟動應用程式。
cd first-react-app npm start
轉到您的瀏覽器並轉到以下URL localhost:3000。您應該能夠看到您的應用程式正在執行
基本資料夾結構說明
建立專案時,您會注意到它建立了一堆檔案。在這裡,我將列出一些您應該注意的重要檔案和資料夾。
- package.json:此檔案包含所需的節點依賴項列表。
- public / index.html:當應用程式啟動時,這是第一個載入的頁面。這將是整個應用程式中唯一的html檔案,因為React通常使用JSX編寫,稍後我會介紹。此外,此檔案有一行程式碼<div id=”root”></div>。此行非常重要,因為所有應用程式元件都已載入到此div中。
- src / index.js:這是與index.html對應的javascript檔案。此檔案具有以下程式碼行,這是非常重要的。ReactDOM.render(<App />, document.getElementById(‘root’));
- 上面的程式碼行告訴我們必須將App Component(很快將覆蓋App Component)載入到id為root的html元素中。這只是index.html中存在的div元素。
- src / index.css:與index.js對應的CSS檔案。
- src / App.js:這是App Component 的檔案。App Component是React中的主要元件,它充當所有其他元件的容器。
- src / App.css:這是與App Component 對應的CSS檔案
- build:這是儲存構建檔案的資料夾。React Apps可以使用JSX或普通的JavaScript本身開發,但使用JSX肯定會讓開發人員更容易編寫程式碼:)。但是瀏覽器並不瞭解JSX。所以在部署之前需要將JSX轉換為javascript。捆綁和縮小後,這些轉換後的檔案將儲存在構建資料夾中。要檢視構建資料夾,請執行以下命令npm run build
建立元件
React中的Component具有特定的功能。應用程式只是一組元件。每個元件可以有多個子元件,元件可以相互通訊。
我們現在建立一個React元件。
在src資料夾中建立一個名為FirstComponent.js的檔案,並將以下程式碼複製到FirstComponent.js中。
import React, {Component} from 'react'; export default class FirstComponent extends Component { constructor(props) { super(props) } render() { const element = (<div>Text from Element</div>) return (<div className="comptext"> <h3>First Component</h3> {this.props.displaytext} {element} </div>) } } |
- 元件名稱是FirstComponent,它由檔名和語句表示export default class FirstComponent extends Component
- 建構函式中的props屬性將包含作為此元件的輸入傳遞的所有引數。
- render():在螢幕上呈現(顯示)此函式的返回值。每當呼叫render()函式時,螢幕都會被重新渲染。這通常由應用程式自動完成。在這個函式中看起來與html非常相似的程式碼只不過是JSX。
JSX
JSX看起來非常類似於HTML,但具有javascript的全部功能。在這裡,我將解釋JSX程式碼以及它正在嘗試做什麼。
render() { const element = (<div>Text from Element</div>) return (<div className="comptext"> <h3>First Component</h3> {this.props.displaytext} {element} </div>) } |
第一行const element = (<div>Text from Element</div>)建立一個div元素並將其賦值給一個常量即被呼叫元素。你看到的這個特殊的語法只不過是JSX。
在Return語句中,您會看到以下程式碼語法。
<div className="comptext"> <h3>First Component</h3> {this.props.displaytext} {element} </div>
這裡className用於指向CSS類。<h3>First Component</h3>只是普通的html語法。{this.props.displaytext}用於從props訪問名為displaytext的屬性(因此無論何時呼叫此元件,displaytext都將作為輸入傳遞)。這裡displaytext只是我給出的一個自定義名稱。{element}是建立的常量,它又包含div元素。
使用元件
FirstComponent已建立,但尚未在任何地方使用。讓我們將FirstComponent新增到App Component。這是App.js的修改程式碼
import React, { Component } from 'react'; import logo from './logo.svg'; import './App.css'; import FirstComponent from './FirstComponent' class App extends Component { render() { return ( <div className="App"> <header className="App-header"> <img src={logo} className="App-logo" alt="logo" /> <h1 className="App-title">Welcome to React</h1> </header> <p className="App-intro"> To get started, edit <code>src/App.js</code> and save to reload. </p> <FirstComponent displaytext="First Component Data"/> </div> ); } } export default App; |
需要將FirstComponent匯入App Component First,這在行中完成import FirstComponent from ‘./FirstComponent’
然後使用該行將FirstComponent新增到App Component<FirstComponent displaytext=”First Component Data”/>
這裡displaytext作為屬性傳遞給FirstComponent。
現在,您可以使用下面命令執行應用程式:
npm start
您應該在瀏覽器中看到結果。
恭喜
現在您知道如何建立React應用程式以及如何建立和使用React元件。你也對JSX有點了解:)
相關文章
- redis快取和業務應用瞭解Redis快取
- 快速瞭解Django:核心概念解析與實踐指南Django
- 瞭解如何使用 Spring 和 RabbitMQ 建立一個簡單的釋出和訂閱應用程式SpringMQ
- 10家能夠幫助您應對網路釣魚的公司
- 快速瞭解jQueryjQuery
- 幫助AdMob團隊,也就是幫助您自己
- 快應用簡單瞭解
- 建立索引,這些知識應該瞭解索引
- 如何瞭解常見的三種物理伺服器?具體場景幫助應用伺服器
- 快速瞭解 Deno 目前的 APIAPI
- 使用 nuxi add 快速建立 Nuxt 應用元件UX元件
- 應用層,瞭解一下
- 使用Taro開發鴻蒙原生應用——快速上手,鴻蒙應用開發指南鴻蒙
- 使用 Taro 開發鴻蒙原生應用 —— 快速上手,鴻蒙應用開發指南鴻蒙
- 帶您探究雲端儲存的奧祕,三分鐘幫您快速瞭解OSS
- 快速瞭解財務RPA機器人在金融銀行業中的應用場景機器人行業
- Spring 指南(瞭解REST)SpringREST
- Xposed瞭解以及在Android中的應用Android
- 一篇文章瞭解什麼是AQS和應用AQS
- FlexboxLayout幫助您完成聰明的UI佈局FlexUI
- 快速瞭解 React Hooks 原理ReactHook
- Spring Security 快速瞭解Spring
- 快速瞭解雲端計算
- 帶你快速瞭解HTMLHTML
- 全面瞭解 Nginx 主要應用場景Nginx
- 全面瞭解Nginx主要應用場景Nginx
- 快速簡單的瞭解VLAN(VXLAN)和埠鏈路型別型別
- aspnetcore 應用 接入Keycloak快速上手指南NetCore
- 建立自己的定製的Spring Boot Starter快速指南Spring Boot
- 一個庫幫你輕鬆的建立漂亮的.NET控制檯應用程式
- Google 正式開源 Jib ,幫助 Java 應用快速容器化GoJava
- Java Lambda表示式應用介紹,幫助大家快速掌握LambdaJava
- K8s 下的應用管理 — 瞭解 HelmK8S
- K8s 下的應用管理 — 瞭解 HelmfileK8S
- Docker從瞭解到部署應用的詳細教程Docker
- Eclipse開發:瞭解RCP應用的實現Eclipse
- 前端 SPA 單頁應用資料統計解決方案 (ReactJS / VueJS)前端ReactJSVue
- 影片該怎麼管理?Usher-簡單實用的影片管理工具幫助您