有下圖這樣一個(gè)列表,body中每個(gè)單元格里的內(nèi)容可能是一個(gè)span(單行數(shù)據(jù)),可能是一個(gè)ul>li(對(duì)象或多行數(shù)據(jù),比如班級(jí)),甚至最后一個(gè)操作列里面可能是select>option,總之是未知的一個(gè)組件或html字符串。那么我在寫vue單元格組件的時(shí)候,希望外界能給它傳遞一些組件供其渲染數(shù)據(jù)。而單元格事先并不知道我要給它傳什么組件(保持組件干凈,它只按指定字段接收組件),這種情況下,這個(gè)單元格組件怎么寫呢?具體一點(diǎn)就是:怎么讓一個(gè)組件接收 未知組件或html字符串 并渲染(重點(diǎn)在于如何渲染,現(xiàn)在TableViewCell的prop中已經(jīng)可以接收到了DropDown組件對(duì)象) 呢?在react中這種情況比較好處理,虛擬dom加上去就可以了,但是vue中,模板是模板,js是js,處理起來有點(diǎn)棘手。目前項(xiàng)目中組件的層級(jí)關(guān)系是:(特定頁(yè)面)TaskPage -> 傳遞數(shù)據(jù) 及 特定數(shù)據(jù)下在td標(biāo)簽中的渲染組件,比如傳遞一個(gè)DropDown組件
(公共組件)TableView
(公共組件)TableViewCell(其實(shí)就是一個(gè)td標(biāo)簽,把傳過來的DropDown組件渲染進(jìn)td)
vue中,父組件可以向子組件傳遞一個(gè)組件(不僅是數(shù)據(jù))嗎?
長(zhǎng)風(fēng)秋雁
2018-09-05 14:10:01