中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

農(nóng)業(yè)電商網(wǎng)站有哪些google chrome瀏覽器

農(nóng)業(yè)電商網(wǎng)站有哪些,google chrome瀏覽器,煙臺(tái)網(wǎng)站建設(shè)薇企匯互聯(lián)見效付款,南昌網(wǎng)站開發(fā)建設(shè)文章目錄 React是什么? 為什么要學(xué)習(xí)React React開發(fā)前準(zhǔn)備 創(chuàng)建React項(xiàng)目 React項(xiàng)目結(jié)構(gòu)簡介 React組件化 初識(shí)JSX 渲染JSX描述的頁面 JSX語法 JSX的Class與Style屬性 JSX生成的React元素 條件渲染(一) 條件渲染 &#xff0…

文章目錄

? ? ? ?React是什么?

為什么要學(xué)習(xí)React?

React開發(fā)前準(zhǔn)備?

創(chuàng)建React項(xiàng)目?

React項(xiàng)目結(jié)構(gòu)簡介?

React組件化

初識(shí)JSX?

渲染JSX描述的頁面

?JSX語法

JSX的Class與Style屬性

JSX生成的React元素

條件渲染(一)

條件渲染 (二)

列表渲染

?事件處理


React是什么?

React 起源于 Facebook 的內(nèi)部項(xiàng)目,于2013年5月公開發(fā)布。
用于構(gòu)建用戶界面的 JavaScript 庫。

React 特點(diǎn)

1、聲明式 ? 以聲明式編寫 UI,我們只需要編寫代碼描述UI,當(dāng)數(shù)據(jù)變動(dòng)時(shí) React 能高效更新并渲染合適的組件

2、JSX ? JSX 是 JavaScript 語法的擴(kuò)展。React 開發(fā)不一定使用 JSX ,但我們建議使用它。

3、高效 ?React通過對(duì)DOM的模擬,最大限度地減少與DOM的交互。

4、組件 ? 通過 React 構(gòu)建組件,使得代碼更加容易得到復(fù)用,能夠很好的應(yīng)用在大項(xiàng)目的開發(fā)中。

5、單向響應(yīng)的數(shù)據(jù)流 ? React 實(shí)現(xiàn)了單向響應(yīng)的數(shù)據(jù)流,從而減少了重復(fù)代碼,這也是它為什么比傳統(tǒng)數(shù)據(jù)綁定更簡單。

為什么要學(xué)習(xí)React?

1、React是目前前端最火的框架之一

2、React是目前企業(yè)技術(shù)棧中要求的知識(shí)點(diǎn)

3、React可以提升開發(fā)體驗(yàn)

4、...

React開發(fā)前準(zhǔn)備?

?React官方參考文檔:https://zh-hans.reactjs.org/

創(chuàng)建React項(xiàng)目?

使用集成的工具鏈,以實(shí)現(xiàn)最佳的用戶和開發(fā)人員體驗(yàn)。

Create React App工具鏈

Create React App 是用 React 創(chuàng)建新應(yīng)用的最佳方式,它會(huì)配置你的開發(fā)環(huán)境,以便使你能夠使用最新的 JavaScript 特性,提供良好的開發(fā)體驗(yàn)。

npx create-react-app my-app?

溫馨提示?

1、需要在你的機(jī)器上安裝 Node >= 14.0.0 和 npm >= 5.6

2、項(xiàng)目名稱不能存在大寫字母,可以使用橫杠(-)連接多個(gè)詞匯

運(yùn)行項(xiàng)目

項(xiàng)目創(chuàng)建完成之后,啟動(dòng)方式也是有他的專屬方式

// 第一步:進(jìn)入項(xiàng)目的根目錄
cd my-app
// 第二步:啟動(dòng)項(xiàng)目
npm start

啟動(dòng)成功效果:

?VSCode快捷鍵

vsCode有很多針對(duì)React快捷鍵,這里我推薦: ES7

React/Redux/GraphQL/React-Native snippets

React項(xiàng)目結(jié)構(gòu)簡介?

?了解React項(xiàng)目的項(xiàng)目結(jié)構(gòu)對(duì)我們繼續(xù)開發(fā)是很有必要的

node_modules:React項(xiàng)目需要的依賴包,注意:此文件夾不可以移動(dòng)壓縮復(fù)制等操作public:React項(xiàng)目靜態(tài)資源文件夾,包含 index.html 入口文件、圖片、 manifest.json 配置文件等src:源碼文件夾,我們開發(fā)主要在這里編寫代碼 .gitignore:git忽略文件package-lock.json:完整依賴包的信息文件package.json:定義項(xiàng)目所需要的各種模塊名稱、版本信息等README.md:markdown文件,項(xiàng)目的注釋或描述文件

src 文件夾下的文件

App.css:App組件對(duì)應(yīng)的css文件App.js:App組件,主入口組件App.test.js:App組件測試文件index.css:index主入口文件對(duì)應(yīng)css文件,也是公共css文件logo.svg:logo圖片reportWebVitals.js:檢測文件。包含三個(gè)關(guān)鍵指標(biāo)(CLS、FID、LCP)和兩個(gè)輔助指標(biāo)(FCP、TTFB)setupTests.js:測試文件,針對(duì)項(xiàng)目編寫測試用例使用

React組件化

?組件

在React應(yīng)用中,我們把一個(gè)頁面看作是由一個(gè)個(gè)組件構(gòu)成的。每一個(gè)組件可以包含自己的頁面結(jié)構(gòu)(HTML)與頁面邏輯(JavaScript)

?組件化

組件化開發(fā),帶來了全新的開發(fā)體驗(yàn),也帶來了全新的編碼方式。
在React中,構(gòu)建管理自身狀態(tài)的封裝組件,然后對(duì)其組合以構(gòu)成復(fù)雜的 UI。

由于組件邏輯使用 JavaScript 編寫而非模板,因此你可以輕松地在應(yīng)用中傳遞數(shù)據(jù),并保持狀態(tài)與 DOM 分離。
比如:App組件

初識(shí)JSX?

?JSX的作用

?我們使用JSX來實(shí)現(xiàn)組件中的頁面結(jié)構(gòu)。

什么是JSX

一個(gè) JavaScript 的語法擴(kuò)展,JSX 可以生成 React “元素”,React元素用來描述頁面應(yīng)該長什么樣子。

?index.js

?App.js

?

渲染JSX描述的頁面

?應(yīng)用渲染界面的過程:

index.js

?App.js

這段jsx描述了界面長什么樣子

?最終生成的頁面DOM

?嘗試自己寫一段JSX,代替App組件的界面

<h1>hello,xiaotong</h1> 

觀察最終生成的DOM結(jié)構(gòu)?

?JSX語法

?最簡單的一段jsx

<h1>Hello, xiaotong</h1>

在JSX中嵌入表達(dá)式

{} 大括號(hào)內(nèi)放置任何有效的 JavaScript 表達(dá)式

const name = 'xiaotong';
const element = <h1>Hello, {name}</h1>;

JSX中指定屬性

如果是靜態(tài)值,則直接使用引號(hào),如果是動(dòng)態(tài)值,則使用 { js表達(dá)式 }

const element = <img src="https://www.baidu.com/img/flexible/logo/pc/result.png"></img>;
const avatarUrl='https://www.baidu.com/img/flexible/logo/pc/result.png'
const element = <img src={avatarUrl}></img>;

JSX子元素嵌套

<div><h1>Hello!</h1><h2>小童</h2></div>

JSX的Class與Style屬性

?設(shè)置元素的類名

提示:
在jsx中,需要將 class 修改為 className

import React, { Component } from 'react'
import "./App.css"
export default class App extends Component {render() {return (<div className='box'></div>)}
}
.box{width: 200px;height: 200px;background-color: red;
}

設(shè)置元素的style


JSX中style的值是一個(gè)對(duì)象。

import React, { Component } from 'react'
export default class App extends Component
{render() {return (<div style={{width:"200px",height:"200px",background:"green" }}></div>)}
}

JSX生成的React元素

?1、JSX最終生成一個(gè)React元素。

const element=<h1 className="con">hello,xiaotong</h1>

JSX被編譯后變成這樣一段JS代碼:

const element = React.createElement('h1', {className: 'con'},'hello,xiaotong'
);

React.createElement 返回的對(duì)象長這個(gè)樣子,這個(gè)對(duì)象用來描述界面應(yīng)該長什么樣子,我們就把這個(gè)對(duì)象稱為 React元素 。

//簡化版
const element = {type: 'h1',props: {className: 'con',children: 'hello,baizhan'}
};

可以打印一下,查看完整的React元素

console.log(<h1 className="con">hello,xiaotong</h1>)

?之后 React DOM 會(huì)根據(jù)這個(gè)對(duì)象描述的信息生成 真正的DOM元素 。

條件渲染(一)

?我們可以根據(jù)不同的條件,渲染不同的界面。

1、使用 if

const flag=trueif(flag){return <div>生存吧</div>
}return <div>毀滅吧</div>

2、三目運(yùn)算符 condition ? true : false

const flag = true
return flag ? <div>生存吧</div> : <div>毀滅吧</div>

或者

const flag = true
const element=flag ? <div>生存吧</div> : <div>毀滅吧</div>
return element

條件渲染 (二)

?1、與運(yùn)算符 &&

const flag=true
return flag && <div>生存吧</div>
const flag=true
return <div>?{flag && "生存吧"} </div>

提示:
JavaScript 中, true && expression 總是會(huì)返回 expression , 而 false && expression 總是會(huì)返回 false
因此,如果條件是 true && 右側(cè)的元素就會(huì)被渲染,如果是 falseReact 會(huì)忽略并跳過它。

2、使用 null?

如果返回 null ,則React什么都不渲染

const flag=true
return {flag ?<div>生存吧</div> :null}

列表渲染

?列表是頁面常見的展示效果

?可以通過使用 {} 在 JSX 內(nèi)構(gòu)建一個(gè)元素集合。

return ?<ul>{["前端團(tuán)隊(duì)","后端團(tuán)隊(duì)","設(shè)計(jì)團(tuán)隊(duì)"].map((item,index) =>{return <li key={ index }>{ item } </li>})}</ul>

復(fù)雜數(shù)據(jù)列表渲染

const list = [{"id": 2208287,"desc": "鄞州:家有富礦,博物館的美好力量,你get到了嗎? “21世紀(jì)的博物館擁有巨大的","title": "果小桃"},{"id": 2208760,"desc": "梅里雪山北坡|我的第二次重裝徒步·附攻略1 篇1? \t 字?jǐn)?shù)限制🚫詳細(xì)攻略會(huì)分","title": "小蘑豬zcy"},{"id": 2208882,"desc": "? 巴塞羅那觀賞日落的好去處 巴塞羅那,一座地中海城市,融合了羅馬、中世紀(jì)的風(fēng)格","title": "Go旅城通票"}
]return <ul>{list.map((item, index) => {return (<li key={item.id}><h3>{item.title}</h3><p>{item.desc}</p></li>)})}</ul>

提示:
key 幫助 React 識(shí)別哪些元素改變了,比如被添加或刪除。因此你應(yīng)當(dāng)給數(shù)組中的每一個(gè)元素賦予一個(gè)確定的標(biāo)識(shí)。

?事件處理

?React 元素的事件處理和 DOM 元素的很相似,但是有一點(diǎn)語法上的不同:

1、React 事件的命名采用小駝峰式(camelCase),而不是純小寫。
2、使用 JSX 語法時(shí)你需要傳入一個(gè)函數(shù)作為事件處理函數(shù),而不是一個(gè)字符串。

http://www.risenshineclean.com/news/61479.html

相關(guān)文章:

  • 江蘇連云港網(wǎng)站制作公司輿情監(jiān)測分析系統(tǒng)
  • 做傳單的網(wǎng)站網(wǎng)站運(yùn)營培訓(xùn)學(xué)校
  • 品牌網(wǎng)站推廣寧波網(wǎng)站優(yōu)化公司推薦
  • 美國做ppt的網(wǎng)站怎么進(jìn)入百度推廣賬戶
  • 做美食類網(wǎng)站分析軟文營銷廣告
  • 旅游網(wǎng)站建設(shè)解決方案競價(jià)托管代運(yùn)營多少錢
  • 無為縣住房建設(shè)局網(wǎng)站首頁北京突發(fā)重大消息
  • 怎么看一個(gè)網(wǎng)站做沒做優(yōu)化開魯網(wǎng)站seo不用下載
  • 關(guān)于做網(wǎng)站電話銷售深圳排名seo
  • 服裝網(wǎng)站建設(shè)規(guī)劃方案佛山今日頭條
  • 房地產(chǎn)網(wǎng)站制作關(guān)聯(lián)詞有哪些三年級(jí)
  • 什么網(wǎng)站可以做實(shí)驗(yàn)室免費(fèi)源碼網(wǎng)站
  • 順德網(wǎng)站建設(shè)哪家好網(wǎng)頁設(shè)計(jì)學(xué)生作業(yè)模板
  • 網(wǎng)站建設(shè)能帶來流量么建站小程序
  • 有哪些網(wǎng)站免費(fèi)做推廣獨(dú)立站seo
  • 深圳網(wǎng)站制作公司興田德潤在哪里建立網(wǎng)站平臺(tái)
  • 介紹產(chǎn)品網(wǎng)站制作制作自己的網(wǎng)頁
  • 操作簡單網(wǎng)站搭建費(fèi)用網(wǎng)站免費(fèi)搭建平臺(tái)
  • wordpress手機(jī)號(hào)網(wǎng)站企業(yè)seo培訓(xùn)
  • 中國的網(wǎng)站域名新媒體營銷案例分析
  • 程序員做彩票網(wǎng)站違法嗎競價(jià)廣告推廣
  • php+開發(fā)動(dòng)態(tài)網(wǎng)站開發(fā)百度推廣的四種收費(fèi)形式
  • 高端網(wǎng)站鑒賞哈爾濱百度搜索排名優(yōu)化
  • 網(wǎng)站開發(fā)外快百度自動(dòng)搜索關(guān)鍵詞軟件
  • 長沙網(wǎng)紅美食seo型網(wǎng)站
  • 蔬菜基地做網(wǎng)站合適嗎金戈枸櫞酸西地那非片
  • 線上網(wǎng)站開發(fā)系統(tǒng)流程網(wǎng)絡(luò)營銷的宏觀環(huán)境
  • 河南鄭州暴雨傷亡seo標(biāo)題優(yōu)化分析范文
  • 威海網(wǎng)站建設(shè)是什么seo基礎(chǔ)知識(shí)培訓(xùn)
  • 財(cái)務(wù)咨詢網(wǎng)站模板網(wǎng)站推廣的方式和方法