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

React應(yīng)用(基于React腳手架)

這篇具有很好參考價值的文章主要介紹了React應(yīng)用(基于React腳手架)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言:

react 是前端三大框架中之一,而且大公司基本都在用react 包括百度也在使用 他有自己的獨特的虛擬dom
build-react-cli是幫助你快速創(chuàng)建生成react項目的腳手架工具,配置了多種可選擇的不同類型項目模版。


一、使用create-react-app創(chuàng)建react應(yīng)用

1、什么是 react 腳手架?

  1. xxx腳手架: 用來幫助程序員快速創(chuàng)建一個基于xxx庫的模板項目
    1. 包含了所有需要的配置(語法檢查、jsx編譯、devServer…)
    2. 下載好了所有相關(guān)的依賴
    3. 可以直接運行一個簡單效果
  2. react提供了一個用于創(chuàng)建react項目的腳手架庫: create-react-app
  3. 項目的整體技術(shù)架構(gòu)為: react + webpack + es6 + eslint
  4. 使用腳手架開發(fā)的項目的特點: 模塊化, 組件化, 工程化

2. 創(chuàng)建 cli 腳手架方式1

  1. 先全局安裝腳手架工具包
    命令:npm i -g create-react-app
  2. 用腳手架工具來創(chuàng)建項目
    命令:create-react-app + 項目名稱
  3. 啟動項目
    命令: npm start

3. 創(chuàng)建 cli 腳手架方式2

直接使用npx來創(chuàng)建項目

  • 命令:
    npx create-react-app + 項目名稱
  • 解釋:
    npx create-react-app 是固定命令,create-react-appReact 腳手架的名稱
  • 啟動項目
    命令: npm start

4. npx:

  1. npxnpm v5.2 版本新添加的命令,用來簡化 npm 中工具包的使用
  2. 沒有 npx 之前:
    • 全局安裝 npm i -g create-react-app
    • 在通過腳手架的命令來創(chuàng)建 React 項目
  3. 有了 npx 之后
    • npx 調(diào)用最新的 create-react-app 直接創(chuàng)建 React 項目

5. react腳手架項目結(jié)構(gòu)

public ---- 靜態(tài)資源文件夾:

  • favicon.icon ------ 網(wǎng)站頁簽圖標(biāo)
  • index.html -------- 主頁面
  • logo192.png ------- logo圖
  • logo512.png ------- logo圖
  • manifest.json ----- 應(yīng)用加殼的配置文件
  • robots.txt -------- 爬蟲協(xié)議文件

src ---- 源碼文件夾:

  • App.css -------- App組件的樣式
  • App.js --------- App組件
  • App.test.js ---- 用于給App做測試
  • index.css ------ 樣式
  • index.js ------- 入口文件
  • logo.svg ------- logo圖
  • reportWebVitals.js
    • 頁面性能分析文件(需要web-vitals庫的支持)
  • setupTests.js
    • 組件單元測試的文件(需要jest-dom庫的支持)

6. 功能界面的組件化編碼流程(通用)

  1. 拆分組件: 拆分界面,抽取組件
  2. 實現(xiàn)靜態(tài)組件: 使用組件實現(xiàn)靜態(tài)頁面效果
  3. 實現(xiàn)動態(tài)組件
    1. 動態(tài)顯示初始化數(shù)據(jù)
      • 數(shù)據(jù)類型
      • 數(shù)據(jù)名稱
      • 保存在哪個組件?
    2. 交互(從綁定事件監(jiān)聽開始)

7. 如何更改腳手架版本

  1. 由于 create-react-app my-app 安裝的都是最新的版本 所以我們需要指定版本,直接執(zhí)行下面的步驟就可以
  2. 腳手架創(chuàng)建完成后改變 package.json 中的 react 版本
    React應(yīng)用(基于React腳手架)
  3. 更改為指定版本后刪除 node_modules 文件,重新 npm i 下載配置
  4. 配置完成后運行會報錯,因為組件中使用的還是源版本配置
  5. 刪除 publicsrc 文件夾下所有文件,根據(jù)當(dāng)前版本進(jìn)行配置
  6. 只需要配置完成 public 下的 index.html 文件,和 src 下的 index.jsApp.js 文件。
  7. publicindex.html 文件的內(nèi)容
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <link rel="icon" href="./favicon.ico" /> <!-- 當(dāng)前行為引入 logo 圖標(biāo),如果無需引入可以不寫 -->
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="/css/bootstrap.css">
    <title>react-redux</title>
</head>
<body>
    <div id="root"></div>
</body>
</html>
  1. src 下的 index.js 文件
import React from 'react'
import ReactDom from 'react-dom'
import App from './App'
ReactDom.render(<App />, document.getElementById('root'));
  1. src 下的 App.js 文件
import React from 'react'

export default function App() {
  return (
    <div>
      App組件
    </div>
  )
}
  1. 使用 npm start 運行項目即可

二、React 組件的組合使用

在 React 中,父子組件的通信是常見的問題,除了使用狀態(tài)管理工具(如redux)以外,也可以實現(xiàn)父子組件的相互通信。

其中,父組件可以通過props、原型方法向子組件通信,子組件可以通過回調(diào)函數(shù)、事件冒泡向父組件通信。


1. 父傳子(props傳參)

如下代碼,list 作為 props 由父組件傳遞給子組件,子組件拿到 list 后,渲染在頁面上。

參數(shù) list 由父組件傳遞給了子組件。

// 父組件
import React, { Component } from 'react'
import List from "./components/List"

export default class App extends Component {
    state = {
        // 渲染數(shù)據(jù)
        list: [
            { id: 0, title: '111', show: true, checked: false },
            { id: 1, title: '222', show: true, checked: false },
            { id: 2, title: '333', show: true, checked: false },
        ],
    }
    render() {
        return (
            <div>
                <List list={this.state.list} />
            </div>
        )
    }
}

// 子組件
import React, { Component } from 'react'

export default class index extends Component {
    render() {
        const { list } = this.props
        return (
            <div>
                <ul className="todo-main">
                    <Item list={list}/>
                </ul>
            </div>
        )
    }
}

2. 子傳父

父組件需要向子組件傳遞一個函數(shù),然后,子組件通過props獲取函數(shù)并附上參數(shù),最后,父組件通過函數(shù)拿到子組件傳遞的值。

// 父組件
import React, { Component } from 'react'
import List from "./components/List"

export default class App extends Component {
    changeitem = (e, id) => {
        console.log('子傳父接收');
    }
    render() {
        return (
            <div>
                <List changeitem={this.changeitem} />
            </div>
        )
    }
}

// 子組件
import React, { Component } from 'react'

export default class index extends Component {
    // 子傳父觸發(fā)事件(單選框改變事件)
    changeitem = (e, id) => {
        // 子傳父
        this.props.changeitem(e, id)
    }
    render() {
        return (
            <div></div>
        )
    }
}

3. TodoList 代碼示例

功能: 組件化實現(xiàn)此功能

  1. 顯示所有todo列表
  2. 輸入文本, 點擊按鈕顯示到列表的首位, 并清除輸入的文本

因代碼過多無法在當(dāng)前頁面展示,當(dāng)前資源已上傳,點擊跳轉(zhuǎn)


4. TodoList 效果展示

功能: 組件化實現(xiàn)此功能

  1. 顯示所有todo列表
  2. 輸入文本, 點擊按鈕顯示到列表的首位, 并清除輸入的文本

React應(yīng)用(基于React腳手架)


總結(jié):

歡迎大家加入我的社區(qū),在社區(qū)中會不定時發(fā)布一些精選內(nèi)容:https://bbs.csdn.net/forums/db95ba6b828b43ababd4ee5e41e8d251?category=10003


以上就是 React應(yīng)用(基于React腳手架),不懂得也可以在評論區(qū)里問我或私聊我詢問,以后會持續(xù)發(fā)布一些新的功能,敬請關(guān)注。
我的其他文章:https://blog.csdn.net/weixin_62897746?type=blog文章來源地址http://www.zghlxwxcb.cn/news/detail-420769.html

到了這里,關(guān)于React應(yīng)用(基于React腳手架)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 創(chuàng)建react腳手架項目——demo(react18 + react-router 6)+ react項目打包部署

    創(chuàng)建react腳手架項目——demo(react18 + react-router 6)+ react項目打包部署

    全局安裝 create-react-app 說明:不建議安裝全局,建議使用 npx 命令安裝,具體可參考官網(wǎng),如下: 官網(wǎng): https://zh-hans.legacy.reactjs.org/docs/create-a-new-react-app.html. 1.2.1 問題1——npm ERR! code ENOTFOUND(網(wǎng)絡(luò)問題clashx) 問題描述,如下: 解決問題——方式1 如果使用了clashx,可能是它

    2024年02月07日
    瀏覽(30)
  • Webpack5入門到原理19:React 腳手架搭建

    package.json .eslintrc.js babel.config.js webpack.config.js 修改運行指令 package.json

    2024年01月21日
    瀏覽(29)
  • react快速開始(三)-create-react-app腳手架項目啟動;使用VScode調(diào)試react

    react快速開始(三)-create-react-app腳手架項目啟動;使用VScode調(diào)試react

    create-react-app(以下簡稱cra)作為react官方提供的腳手架工具,是目前生成react項目一個非常常用和主流的工具。很多企業(yè)級的應(yīng)用搭建也是基于這個腳手架工具上二次開發(fā) create-react-app腳手架 生成的 package.json中 scripts如下: 我們看到分別是項目的啟動開發(fā)環(huán)境,構(gòu)建,測試的

    2024年02月10日
    瀏覽(31)
  • react native在windows環(huán)境搭建并使用腳手架新建工程

    react native在windows環(huán)境搭建并使用腳手架新建工程

    截止到2024-1-11,使用的主要 軟件的版本 如下: 軟件實體 版本 react-native 0.73.1 react 18.2.0 react-native-cli 2.0.1 Android Studio 2022.3.1 Patch3 Android SDK Android SDK Platform 33 34 Android SDK Android SDK Tools 33 34 Android SDK Intel x86 Atom_64 System Image Android SDK Google APIs Intel x86 Atom System Image node 20.10.0 yarn 1.

    2024年02月02日
    瀏覽(29)
  • 前端架構(gòu): 腳手架框架之yargs高級應(yīng)用教程

    腳手架框架之yargs高級應(yīng)用 1 )高級應(yīng)用概述 現(xiàn)在還用 xyzcli 這個腳手架,繼續(xù)在這個項目中來看yargs的高級用法 在 yargs 文檔中, 給出了復(fù)雜應(yīng)用的方式,這里做下詳解 https://www.npmjs.com/package/yargs?activeTab=readme#complex-example 這里主要關(guān)注 ↓ command recommendCommands fail 2 )command 應(yīng)用

    2024年02月20日
    瀏覽(26)
  • 前端架構(gòu): 腳手架框架之yargs的11種基礎(chǔ)核心特性的應(yīng)用教程

    腳手架框架之yargs的基礎(chǔ)核心特性與應(yīng)用 1 )概述 yargs 是腳手架當(dāng)中使用量非常大的一個框架 進(jìn)入它的npm官網(wǎng): https://www.npmjs.com/package/yargs 目前版本: 17.7.2 Weekly Downloads: 71,574,188 (動態(tài)數(shù)據(jù)) 最近更新:last month (github) 說明這是一個比較優(yōu)質(zhì)的庫 2 )對 yargs 的應(yīng)用 準(zhǔn)備一個腳手

    2024年02月21日
    瀏覽(18)
  • 前端架構(gòu): 腳手架命令行交互核心實現(xiàn)之inquirer和readline的應(yīng)用教程

    前端架構(gòu): 腳手架命令行交互核心實現(xiàn)之inquirer和readline的應(yīng)用教程

    命令行交互核心實現(xiàn) 核心目標(biāo):實現(xiàn)命令行行交互,如List 命令行的交互呢比命令行的渲難度要更大,因為它涉及的技術(shù)點會會更多 它涉及以下技術(shù)點 鍵盤輸入的一個監(jiān)聽 (這里通過 readline 來實現(xiàn)) 計算命令行窗口的尺寸 清屏 光標(biāo)的移動 輸出流的靜默 (我們輸出的內(nèi)容, 不

    2024年04月23日
    瀏覽(20)
  • 實現(xiàn)一個簡單的前端腳手架

    實現(xiàn)一個簡單的前端腳手架

    前端腳手架概念 實現(xiàn)前端腳手架 隨著前端工程化的概念越來越深入人心,腳手架應(yīng)運而生。簡單來說,「前端腳手架」就是指通過選擇幾個選項快速搭建項目基礎(chǔ)代碼的工具 前端腳手架可幫我們做什么? 可以幫助我們快速生成項目的基礎(chǔ)代碼 腳手架工具的項目模板經(jīng)過了

    2024年02月03日
    瀏覽(29)
  • 前端如何搭建腳手架并在本地運行

    前端如何搭建腳手架并在本地運行

    在開始搭建前,確保本機(jī)安裝了node,為避免奇奇怪怪的問題 建議node版本16以上 使用過vue ,react,angular的同學(xué)都知道 ,應(yīng)該對腳手架有一定的理解,比如vue-cli的 vue create myApp ,其中vue 就是vue-cli聲明的一個命令,下來我們創(chuàng)建一個項目并聲明自己的命令。 創(chuàng)建一個空的文件夾

    2024年02月20日
    瀏覽(30)
  • 【前端】Vue2 腳手架模塊化開發(fā) -快速入門

    【前端】Vue2 腳手架模塊化開發(fā) -快速入門

    ??歡迎來到@邊境矢夢°的csdn博文?? ???本文主要梳理Vue2 腳手架模塊化開發(fā) ?? ??我是邊境矢夢°,一個正在為秋招和算法競賽做準(zhǔn)備的學(xué)生?? ??喜歡的朋友可以關(guān)注一下 ?????? ,下次更新不迷路?? Ps: 月亮越亮說明知識點越重要 (重要性或者難度越大)??????????

    2024年02月10日
    瀏覽(97)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包