<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專(zhuān)題視頻專(zhuān)題問(wèn)答1問(wèn)答10問(wèn)答100問(wèn)答1000問(wèn)答2000關(guān)鍵字專(zhuān)題1關(guān)鍵字專(zhuān)題50關(guān)鍵字專(zhuān)題500關(guān)鍵字專(zhuān)題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專(zhuān)題關(guān)鍵字專(zhuān)題tag2tag3文章專(zhuān)題文章專(zhuān)題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專(zhuān)題3
        問(wèn)答文章1 問(wèn)答文章501 問(wèn)答文章1001 問(wèn)答文章1501 問(wèn)答文章2001 問(wèn)答文章2501 問(wèn)答文章3001 問(wèn)答文章3501 問(wèn)答文章4001 問(wèn)答文章4501 問(wèn)答文章5001 問(wèn)答文章5501 問(wèn)答文章6001 問(wèn)答文章6501 問(wèn)答文章7001 問(wèn)答文章7501 問(wèn)答文章8001 問(wèn)答文章8501 問(wèn)答文章9001 問(wèn)答文章9501
        當(dāng)前位置: 首頁(yè) - 科技 - 知識(shí)百科 - 正文

        react開(kāi)發(fā)教程之React 組件之間的通信方式

        來(lái)源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 22:32:56
        文檔

        react開(kāi)發(fā)教程之React 組件之間的通信方式

        react開(kāi)發(fā)教程之React 組件之間的通信方式:這兩天學(xué)習(xí)了React感覺(jué)組件通信這個(gè)地方知識(shí)點(diǎn)挺多的,而且很重要,所以,今天添加一點(diǎn)小筆記。 父子組件通訊 通訊手段 這是最常見(jiàn)的通信方式,父組件只需要將子組件需要的props傳給子組件,子組件直接通過(guò)this.props來(lái)使用。 通訊內(nèi)容 更多要提的是
        推薦度:
        導(dǎo)讀react開(kāi)發(fā)教程之React 組件之間的通信方式:這兩天學(xué)習(xí)了React感覺(jué)組件通信這個(gè)地方知識(shí)點(diǎn)挺多的,而且很重要,所以,今天添加一點(diǎn)小筆記。 父子組件通訊 通訊手段 這是最常見(jiàn)的通信方式,父組件只需要將子組件需要的props傳給子組件,子組件直接通過(guò)this.props來(lái)使用。 通訊內(nèi)容 更多要提的是

        這兩天學(xué)習(xí)了React感覺(jué)組件通信這個(gè)地方知識(shí)點(diǎn)挺多的,而且很重要,所以,今天添加一點(diǎn)小筆記。

        父子組件通訊

        通訊手段

        這是最常見(jiàn)的通信方式,父組件只需要將子組件需要的props傳給子組件,子組件直接通過(guò)this.props來(lái)使用。

        通訊內(nèi)容

        更多要提的是如何合理的設(shè)置子組件的props,要想將子組件設(shè)計(jì)成一個(gè)復(fù)用性強(qiáng)的通用組件,需要將能夠復(fù)用的部分抽象出來(lái),抽象出來(lái)的props有兩種形成,一種是簡(jiǎn)單的變量,另一種是抽象出來(lái)處理某種邏輯函數(shù)。

        以Header 組件為例

        //HeaderBar.jsx 子組件
        
        import React, { Component } from 'react';
        
        class Header extends Component {
         constructor() {
         super();
         this.handleClick = (e) => {
         console.log(this)
         }
         }
        
         renderLeftComponent() {
        
         let leftDOM = {};
         if (this.props.renderLeftComponent) {
         return this.props.renderLeftComponent();
         }
        
         if (this.props.showBack) {
         let backFunc = this.props.onBack || this.goBack;
         leftDOM = (<a onClick={backFunc.bind(this)}><i className="icon left-icon icon-left-arrow"></i></a>);
         }
         return leftDOM;
         }
         
        
         renderRightComponent() {
         if (this.props.renderRightComponent) {
         return this.props.renderRightComponent();
         }
         }
        
         goBack() {
         alert("返回上一頁(yè)")
         }
        
         render() {
         return (
         <header className="header-bar">
         {this.renderLeftComponent()}
         <span>{this.props.title || '滴滴'}</span>
         {this.renderRightComponent()}
         </header>
         );
         }
        }
        
        export default Header;
        
        //父親組件部分代碼App.jsx
        import HeaderBar from "./components/Header";
        
        let leftIcon = function () {
         return (
         <a><i className="icon left-icon icon-left-haha"></i>左邊按鈕</a>
         )
        }
        class App extends Component {
        
         render() {
         return (
         <div className="App">
         <HeaderBar title="滴滴打車(chē)" renderLeftComponent={leftIcon} />
         </div>
         );
         }
        }
        

        子父組件通訊

        父-子組件通信的手段是通過(guò)子組件的props是子組件用父組件的東西,子-父組件通信,是父組件用子組件的東西,暫時(shí)了解的兩種方法

        利用回調(diào)函數(shù)

        父組件通過(guò)props傳遞一個(gè)方法給子組件,子組件通過(guò)props方法將子組件數(shù)據(jù)傳遞給父組件

        利用ref

        父組件通過(guò)refs調(diào)用子組件的屬性

        跨級(jí)組件通信

        在React中當(dāng)一個(gè)屬性反復(fù)使用并且存在與好幾個(gè)子組件中的時(shí)候,這個(gè)時(shí)候我們?nèi)绻ㄟ^(guò)props一級(jí)一級(jí)傳遞的話(huà)可以實(shí)現(xiàn)多層級(jí)訪問(wèn),但是這樣出現(xiàn)一個(gè)問(wèn)題就是會(huì)使代碼非常混亂,在React中國(guó)年,我們還可以使用 context 來(lái)實(shí)現(xiàn)跨級(jí)父子組件間的通信;

        在react中context稱(chēng)為蟲(chóng)洞

        // Component 父級(jí)
        class parentComponent extends React.Component {
         
         // add the following property
         static childContextTypes = {
         color: React.PropTypes.string
         }
         
         // 添加下面方法
         getChildContext() {
         return {
         color: "#f00"
         }
         }
         
         render() {
         <div>
         <Child1 />
         </div>
         }
        }
        
        
        // Component Child1
        class Child1 extends React.Component {
         // 添加下面屬性
         static contextTypes = {
         color: React.PropTypes.string
         }
         
         render() {
         <div>{this.context.color}</div>
         }
        }
        
        

        同級(jí)組件通信

        同級(jí)組件之間的通信還是需要通過(guò)父組件作為中介,利用多次父-子組件通信,項(xiàng)目中將需要傳遞的數(shù)據(jù)放在了父組件的state中,變動(dòng)時(shí)可以自動(dòng)的同步傳遞。

        聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        react開(kāi)發(fā)教程之React 組件之間的通信方式

        react開(kāi)發(fā)教程之React 組件之間的通信方式:這兩天學(xué)習(xí)了React感覺(jué)組件通信這個(gè)地方知識(shí)點(diǎn)挺多的,而且很重要,所以,今天添加一點(diǎn)小筆記。 父子組件通訊 通訊手段 這是最常見(jiàn)的通信方式,父組件只需要將子組件需要的props傳給子組件,子組件直接通過(guò)this.props來(lái)使用。 通訊內(nèi)容 更多要提的是
        推薦度:
        • 熱門(mén)焦點(diǎn)

        最新推薦

        猜你喜歡

        熱門(mén)推薦

        專(zhuān)題
        Top
        主站蜘蛛池模板: 午夜免费福利影院| 亚洲精品偷拍视频免费观看| 久久伊人久久亚洲综合| 亚洲国产精品一区第二页| 亚洲一区二区三区首页| 亚洲AV无码久久久久网站蜜桃| 亚洲色在线无码国产精品不卡| 偷自拍亚洲视频在线观看| 国内永久免费crm系统z在线 | 亚洲精品蜜夜内射| 一级毛片免费在线观看网站| 99精品视频免费在线观看| 欧美a级在线现免费观看| 成人伊人亚洲人综合网站222| 亚洲一区爱区精品无码| 色在线亚洲视频www| 日本免费久久久久久久网站| 国产成人在线观看免费网站| 亚洲国产成人精品久久| 免费a级毛片无码a∨免费软件| 亚洲第一精品福利| 国产h视频在线观看免费| 国产成人无码综合亚洲日韩| 少妇无码一区二区三区免费| 亚洲午夜国产精品无码| 在线免费中文字幕| 亚洲av无码精品网站| 精品多毛少妇人妻AV免费久久| 成年女人午夜毛片免费视频| 亚洲色欲www综合网| 午夜不卡久久精品无码免费 | 在线观看无码AV网站永久免费 | 亚洲精品线在线观看| 99在线热播精品免费99热| 亚洲成?Ⅴ人在线观看无码| 亚洲精品美女网站| 亚洲免费电影网站| 亚洲AV中文无码字幕色三| 男女做羞羞的事视频免费观看无遮挡| 亚洲男人第一av网站| 成人免费无码大片a毛片软件|