函數(shù)式組件特點(diǎn):
沒有管理任何狀態(tài) 沒有監(jiān)聽任何傳遞給它的狀態(tài) 沒有生命周期方法 它只是接收一些prop的函我們將這樣的組件標(biāo)記為functional:
無狀態(tài) == 無響應(yīng)式數(shù)據(jù) 無實(shí)例 == 無this上下文函數(shù)式組件的優(yōu)點(diǎn):
渲染開銷低,因?yàn)楹瘮?shù)式組件只是函數(shù);
函數(shù)式組件基本寫法:
{ functional: true, // Props 是可選的 props: { // ... }, // 為了彌補(bǔ)缺少的實(shí)例 // 提供第二個參數(shù)作為上下文 render: function (createElement, context) { // ... }}下面在通過代碼給大家詳細(xì)介紹vue函數(shù)式組件,具體代碼如下所示;
{ functional: true, // Props 是可選的 props: { // ... }, // 為了彌補(bǔ)缺少的實(shí)例 // 提供第二個參數(shù)作為上下文 render: function (createElement, context) { // ... }}組件需要的一切都是通過 context 參數(shù)傳遞,它是一個包含如下字段的對象:
props: 提供所有prop的對象 children:VNode 子節(jié)點(diǎn)的數(shù)組 slots: 一個函數(shù),返回了包含所有插槽的對象 scoptedSlots:(2.6.0) 一個暴露傳入的作用域插槽的對象,也以函數(shù)形式暴露普通插槽 data:傳遞個組件的整個 數(shù)據(jù)對象 ,作為createElement的第二個參數(shù)傳入組件 parent:對父組件的引用 listeners:(2.3.0+) 一個包含了:所有父組件為當(dāng)前組件祖冊的事件監(jiān)聽器對象,是data.on的一個別名 injections:(2.3.0+) 如果使用了inject選項,則改對象包含了:應(yīng)當(dāng)被注入的屬性;總結(jié)
以上所述是小編給大家介紹的Vue函數(shù)式組件你值得擁有,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對錯新站長站網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
新聞熱點(diǎn)
疑難解答
圖片精選