亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
  • const ls = [...this.tate.list]; 表示拷貝list的值到ls

    ls.splice(index, 1); 表示刪除副本的一個值。

    this.setStete ({

    ?list: ls

    });

    不建議直接操作原來的數組,這樣寫性能低下,有些新特性無法使用。

    即不建議這樣寫:

    this.state.list.splice(index, 1);

    this.setState({

    ????list: this.state.list

    });

    查看全部
  • <input 輸入標簽 添加onChange輸入改變事件,綁定某個方法。

    console.log(e.target.value); 控制臺打印傳遞輸入的值

    使用setState傳值給定義的inputValue,只要值發生變化界面也跟著刷新

    this.setState{

    ????inputValue: e.target.value

    }

    點擊事件獲取inputValue的值,this.state.inputVaule

    <input value={this.state.inputValue} 表示輸入標簽的值綁定inputValue當值改變時輸入標簽也跟著刷新

    用于點擊事件置空inputValue的值時,<input 標簽也變為空。

    查看全部
  • constructor 為組件創建的時候會執行的構造函數。

    this.state 為組件數據項,可以存儲很多數據內容。

    循環獲取state定義的list里面的內容

    {

    this.state.list.map((itxx) => {

    ????return <li>{itxx}</li>

    })

    }

    使用.bind(this) 語句表示綁定父組件,不然子組件里面的this表示當前而無法找到this.state

    this.state.list.push('xxx'); 無法添加數據到list并改變組件顯示,

    而需要調用this.setState方法和展開運算符語法添加到list。

    setState數據發生變化時界面才會發送變化。

    增加第二個參數返回(item, index)index 為list數組的下標,

    <li 標簽增加 key={index} 去除沒有key警告(注意key值不能重復)

    查看全部
  • jsx 語法

    可以在標簽內寫JS表達式語句,如:{ 1 + 2}

    不能這樣寫,JS判斷語句是會報錯的

    查看全部
    0 采集 收起 來源:簡單的JSX語法

    2023-03-07

  • 組件是網頁上的一部分,可以是一整塊,或一個輸入框,或一個按鈕,或一個顯示的區域

    React 中以大寫開頭的都是一個組件。

    import React from 'react' 表示引入react語法。

    引入的'react-dom' 別名ReactDOM 去加載APP這個組件。

    創建一個組件,繼承Componect,注意import React, { Component } from 'react';?

    還要注意Export 表示導出組件。

    或這樣寫,但繼承變成:React.Component 組件。

    查看全部
    0 采集 收起 來源:什么是組件?

    2023-03-07

  • 把頁面中方法的.bind(this)全部放到constructor(props)方法中去寫,利于提高頁面渲染性能。
    查看全部
    0 采集 收起 來源:代碼優化

    2023-02-14

  • 子組件與父組件進行通信,子組件要調用父組件傳過來的方法。即首先要父組件通過屬性傳一個方法給子組件,子組件再通過一下this.props調用并傳參。
    查看全部
  • 父組件向子組件傳參,通過標簽自定義屬性(比如<li content={item)></li>,子組件通過this.props.屬性名接受()this.props.centent。
    查看全部
  • 1、用到es6語法:class定義類、類中的constructor()方法、…擴展運算符對數組進行添加刪除操作
    2、JSX語法:在渲染函數render()返回的HTML要用一個大div包含著,不能有兩個及以上的div
    3、this指向問題:view層(頁面中)使用方法時在()中創this,這樣JSX語言中的對應方法的this才能指向當前類實例
    查看全部
  • ReactFiber是React16之后的版本

    查看全部
    0 采集 收起 來源:React 簡介

    2022-11-18

  • 行內樣式使用對象的方式編碼

    |? style={{'background': 'red'}}?

    class改名為 className

    | className='add-btn'

    導入樣式文件

    | import './style.css'

    如果不想render最外層div,使用 React.Fragment標簽

    | <React.Fragment>

    |? ?<div>...</div>

    |? ?<ul>{this.getTodoItems()}</ul>

    | </React.Fragment>

    查看全部
  • 將this綁定放到結構方法中,能提高性能

    ????this.handleInputChange?=?this.handleInputChange.bind(this);
    ????this.handleBtnClick?=?this.handleBtnClick.bind(this);
    ????this.handleItemChange?=?this.handleItemChange.bind(this);

    給render()里面的 return 加上括號,方便寫多行

    ????????return?(
    ??????????<TodoItem
    ????????????deleteItem={this.handleItemChange}
    ????????????key={index}
    ????????????content={item}?/>
    ????????)


    使用ES6 解構賦值的寫法

    const?{?deleteItem,?index}?=?this.props;
    deleteItem(index)

    把代碼量比較多的item提取成方法

    ??getTodoItems(){
    ????return?(
    ??????this.state.list.map((item,?index)?=>?{
    ????????return?(
    ??????????<TodoItem
    ????????????deleteItem={this.handleItemChange}
    ????????????key={index}
    ????????????content={item}?/>
    ????????)
    ??????})
    ????)
    ??}
    <ul>{this.getTodoItems()}</ul>
    查看全部
    0 采集 收起 來源:代碼優化

    2022-11-16

  • 父組件將數組索引傳給子組件

    | <TodoItem delete={this.handleItemChange.bind(this)} key={index} content={item} />

    ? ? 通過 index屬性傳遞數組下標

    ? ? 子組件通過 props.index 獲得下標


    子組件跟父組件通信,需要調用父組件傳遞過來的方法

    | this.props.delete(index)

    父組件通過屬性給子組件傳參,子組件通過事件跟父組件通信

    查看全部
  • 拆分TodoItem組件

    import?React?from?"react";
    
    class?TodoItem?extends?React.Component?{
    ????render(){
    ????????return?(
    ????????????<div>{this.props.content}</div>
    ????????)
    ????}
    }
    
    export?default?TodoItem;


    React有父子組件的概念,TodoList為父組件,TodoItem為子組件,

    ? ? 父組件通過屬性給子組件傳參

    ? ? | <TodoItem content={item} />

    ? ? 子組件通過props接收父組件參數

    ? ? | <div>{this.props.content}</div>

    查看全部
  • React不直接操作DOM,刪除功能操作的是數據

    通過數據下標做刪除功能,下標一般用數據庫id,實在沒辦法采用數組索引

    通過 splice方法做數組刪除

    | list.splice(index, 1);

    盡量不要直接操作 state數據,而是復制出一個副本

    | const list = this.state.list;

    ??handleItemChange(index){
    ????const?list?=?this.state.list;
    ????list.splice(index,?1);
    ????this.setState({?list?})
    ??}
    查看全部

舉報

0/150
提交
取消
課程須知
1、對Javascript基礎知識已經掌握。 2、對Es6和webpack有簡單了解。
老師告訴你能學到什么?
1、React項目架構搭建 2、JSX語法 3、React組件化開發 4、React組件間通信 5、React中的事件 6、React代碼優化 7、React中組件的樣式修飾

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!