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