react組件嵌套

輸出組件

  • 表達式({ })不僅能輸出數(shù)據(jù)梦抢,還是輸出元素般贼。
class Cmp extends React.Component{
    constructor(...args){
        super(...args)
    }
    render(){
        let span = <span>spanaaa</span>
        return (
            <div>{this.props.text},{span}</div>
        )
    }
}
let rootCont = document.getElementById('root')
let a = <Cmp text="我是A"></Cmp>
ReactDOM.render((
    <div>
        {a}
        <Cmp text="我是B"></Cmp>
    </div>
),rootCont)
//輸出:
// 我是A,spanaaa
// 我是B,spanaaa

輸出組件數(shù)據(jù)

  • 直接聲明一個數(shù)組,數(shù)組中為相應的組件,如下代碼中的寫法直接使用{spanlist },頁面中是可以直接輸出的哼蛆,但是控制臺是會報錯蕊梧,提示沒有設置key,在react中的虛擬DOM變化的時候,就需要動態(tài)的設置真是的DOM腮介,這個時候就需要通過key來跟蹤循環(huán)中的虛擬DOM肥矢,來相應真實DOM的正確渲染,key不能重復,且不能修改,修改的話后可能會引起報錯樣式竄行叠洗。如果是使用的單變量進行一個一個添加的話甘改,react會自動的添加key

Warning: Each child in an array or iterator should have a unique "key" prop.

class Cmp extends React.Component{
    constructor(...args){
        super(...args)
    }
    render(){
        let spanlist = [
            <p>組件數(shù)組1</p>,
            <p>組件數(shù)組2</p>,
            <p>組件數(shù)組3</p>
        ]
        return (
            <div>{spanlist}</div>
        )
    }
}
let rootCont = document.getElementById('root')
ReactDOM.render(<Cmp></Cmp>,rootCont)
//輸出:
// 組件數(shù)組1
// 組件數(shù)組2
// 組件數(shù)組3
  • 相對正確的使用如下,但不建議使用循環(huán)中的index作為key灭抑,因為在后期中可能會在數(shù)組中插值
class Cmp extends React.Component{
    constructor(...args){
        super(...args)
    }
    render(){
        let spanlist = [1,2,3]
        return (
            <div>{spanlist.map((item,index)=>{
                return <p key={index}>我是數(shù)組的第{item}個</p>
            })}</div>
        )
    }
}
let rootCont = document.getElementById('root')
ReactDOM.render(<Cmp></Cmp>,rootCont)
//輸出:
// 我是數(shù)組的第1個
// 我是數(shù)組的第2個
// 我是數(shù)組的第3個

組件嵌套

  • 組件的嵌套就像是html嵌套一樣使用十艾。
class Parent extends React.Component{
    constructor(...args){
        super(...args)
    }
    render(){
        let childList=[
            {
                ID:'1',
                text:'子組件1'
            },
            {
                ID:'2',
                text:'子組件2'
            }
        ]
        return (
            <div>
                <p>我是父組件中的p元素</p>
                <ul>
                    <Child></Child>
                    <Child text="單獨使用傳入的text"></Child>
                    {childList.map(item=>{
                        return <Child key={item.ID} text={'循環(huán)輸出的 '+item.text}></Child>
                    })}
                </ul>
            </div>
        )
    }
}
class Child extends React.Component{
    constructor(...args){
        super(...args)
    }
    render(){
        return (
            <li>我是子組件:傳值為:{this.props.text?this.props.text:'空'}</li>
        )
    }
}
ReactDOM.render(<Parent></Parent>,document.getElementById('root'))
//輸出:
// 我是父組件中的p元素
//     我是子組件:傳值為:空
//     我是子組件:傳值為:單獨使用傳入的text
//     我是子組件:傳值為:循環(huán)輸出的 子組件1
//     我是子組件:傳值為:循環(huán)輸出的 子組件2
//     我是子組件:傳值為:循環(huán)輸出的 子組件3
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市腾节,隨后出現(xiàn)的幾起案子忘嫉,更是在濱河造成了極大的恐慌,老刑警劉巖案腺,帶你破解...
    沈念sama閱讀 222,252評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件庆冕,死亡現(xiàn)場離奇詭異,居然都是意外死亡救湖,警方通過查閱死者的電腦和手機愧杯,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,886評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來鞋既,“玉大人力九,你說我怎么就攤上這事∫毓耄” “怎么了跌前?”我有些...
    開封第一講書人閱讀 168,814評論 0 361
  • 文/不壞的土叔 我叫張陵,是天一觀的道長陡舅。 經(jīng)常有香客問我抵乓,道長,這世上最難降的妖魔是什么靶衍? 我笑而不...
    開封第一講書人閱讀 59,869評論 1 299
  • 正文 為了忘掉前任灾炭,我火速辦了婚禮,結果婚禮上颅眶,老公的妹妹穿的比我還像新娘蜈出。我一直安慰自己,他們只是感情好涛酗,可當我...
    茶點故事閱讀 68,888評論 6 398
  • 文/花漫 我一把揭開白布铡原。 她就那樣靜靜地躺著偷厦,像睡著了一般。 火紅的嫁衣襯著肌膚如雪燕刻。 梳的紋絲不亂的頭發(fā)上只泼,一...
    開封第一講書人閱讀 52,475評論 1 312
  • 那天,我揣著相機與錄音卵洗,去河邊找鬼请唱。 笑死,一個胖子當著我的面吹牛忌怎,可吹牛的內(nèi)容都是我干的籍滴。 我是一名探鬼主播酪夷,決...
    沈念sama閱讀 41,010評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼榴啸,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了晚岭?” 一聲冷哼從身側響起鸥印,我...
    開封第一講書人閱讀 39,924評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎坦报,沒想到半個月后库说,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,469評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡片择,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,552評論 3 342
  • 正文 我和宋清朗相戀三年潜的,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片字管。...
    茶點故事閱讀 40,680評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖嘲叔,靈堂內(nèi)的尸體忽然破棺而出亡呵,到底是詐尸還是另有隱情,我是刑警寧澤硫戈,帶...
    沈念sama閱讀 36,362評論 5 351
  • 正文 年R本政府宣布锰什,位于F島的核電站,受9級特大地震影響丁逝,放射性物質(zhì)發(fā)生泄漏汁胆。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,037評論 3 335
  • 文/蒙蒙 一霜幼、第九天 我趴在偏房一處隱蔽的房頂上張望嫩码。 院中可真熱鬧,春花似錦辛掠、人聲如沸谢谦。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,519評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽回挽。三九已至没咙,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間千劈,已是汗流浹背祭刚。 一陣腳步聲響...
    開封第一講書人閱讀 33,621評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留墙牌,地道東北人涡驮。 一個月前我還...
    沈念sama閱讀 49,099評論 3 378
  • 正文 我出身青樓,卻偏偏與公主長得像喜滨,于是被迫代替她去往敵國和親捉捅。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,691評論 2 361