老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業提供網站建設、域名注冊、服務器等服務

Vue中怎么使用slot實現內容分發

這篇文章給大家介紹Vue中怎么使用slot實現內容分發,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

成都創新互聯擁有一支富有激情的企業網站制作團隊,在互聯網網站建設行業深耕十年,專業且經驗豐富。十年網站優化營銷經驗,我們已為上千中小企業提供了網站設計制作、成都做網站解決方案,按需求定制開發,設計滿意,售后服務無憂。所有客戶皆提供一年免費網站維護!

編譯作用域

在深入內容分發 API 之前,先明確內容在哪個作用域里編譯。假定模板為


 {{ message }}

message 應該綁定到父組件的數據,還是綁定到子組件的數據?答案是父組件。組件作用域簡單地說是:父組件模板的內容在父組件作用域內編譯;子組件模板的內容在子組件作用域內編譯。

一個常見錯誤是試圖在父組件模板內將一個指令綁定到子組件的屬性/方法:


假定someChildProperty是子組件的屬性,上例不會如預期工作。父組件模板不應該知道子組件的狀態

如果要綁定作用域內的指令到一個組件的根節點,應當在組件自己的模板上做:

Vue.component('child-component', {
 // 有效,因為是在正確的作用域內
 template: 'Child
',  data: function () {  return {   someChildProperty: true  }  } })

類似地,分發內容是在父作用域內編譯

默認丟棄

一般地,如果子組件模板不包含插口,父組件的內容將會被丟棄

var parentNode = {
 template: `
 
 

父組件

    

測試內容

 
 
 `,  components: {  'child': childNode  }, };

 

如下圖所示,所包含的

測試內容

被丟棄

Vue中怎么使用slot實現內容分發

匿名slot

當子組件模板只有一個沒有屬性的 slot 時,父組件整個內容片段將插入到 slot 所在的 DOM 位置,并替換掉 slot 標簽本身

var childNode = {
 template: `
 
 

子組件

     `, };
var parentNode = {
 template: `
 
 

父組件

    

測試內容

 
   `,  components: {  'child': childNode  }, };

Vue中怎么使用slot實現內容分發

如果出現多于1個的匿名slot,vue將報錯

var childNode = {
 template: `
 
 

子組件

       `, };

Vue中怎么使用slot實現內容分發

【默認值】

最初在標簽中的任何內容都被視為備用內容,或者稱為默認值。備用內容在子組件的作用域內編譯,并且只有在宿主元素為空,且沒有要插入的內容時才顯示備用內容

當slot存在默認值,且父元素在中沒有要插入的內容時,顯示默認值

var childNode = {
 template: `
 
 

子組件

 

我是默認值

   `, }; var parentNode = {  template: `    

父組件

     `,  components: {  'child': childNode  }, };

Vue中怎么使用slot實現內容分發

當slot存在默認值,且父元素在中存在要插入的內容時,則顯示設置值

var childNode = {
 template: `
 
 

子組件

 

我是默認值

   `, }; var parentNode = {  template: `    

父組件

    

我是設置值

 
   `,  components: {  'child': childNode  }, };

Vue中怎么使用slot實現內容分發

具名Slot

元素可以用一個特殊的屬性name來配置如何分發內容。多個 slot 可以有不同的名字。具名 slot 將匹配內容片段中有對應slot特性的元素

var childNode = {
 template: `
 
 

子組件

 頭部默認值  主體默認值  尾部默認值    `, };
var parentNode = {
 template: `
 
 

父組件

    我是頭部

  我是尾部

 
   `,  components: {  'child': childNode  }, };

Vue中怎么使用slot實現內容分發

仍然可以有一個匿名 slot,它是默認 slot,作為找不到匹配的內容片段的備用插槽。匿名slot只能作為沒有slot屬性的元素的插槽,有slot屬性的元素如果沒有配置slot,則會被拋棄

var childNode = {
 template: `
 
 

子組件

 主體默認值      `, };
var parentNode = {
 template: `
 
 

父組件

    我是主體

  

我是其他內容

  我是尾部

 
   `,  components: {  'child': childNode  }, };

插入中,

我是其他內容

插入中,而

被丟棄

Vue中怎么使用slot實現內容分發

如果沒有默認的 slot,這些找不到匹配的內容片段也將被拋棄

var childNode = {
 template: `
 
 

子組件

 主體默認值    `, };
var parentNode = {
 template: `
 
 

父組件

    我是主體

  

我是其他內容

  我是尾部

 
   `,  components: {  'child': childNode  }, };

我是其他內容

都被拋棄

Vue中怎么使用slot實現內容分發

作用域插槽

作用域插槽是一種特殊類型的插槽,用作使用一個 (能夠傳遞數據到) 可重用模板替換已渲染元素。

在子組件中,只需將數據傳遞到插槽,就像將 props 傳遞給組件一樣


 

在父級中,具有特殊屬性 scope 的      `,  components: {  'child': childNode  }, };

如果渲染以上結果,得到的輸出是

Vue中怎么使用slot實現內容分發

【列表組件】

作用域插槽更具代表性的用例是列表組件,允許組件自定義應該如何渲染列表每一項

var childNode = {
 template: `
 
     默認值  
 `,  data(){  return{   items:[   {id:1,text:'第1段'},   {id:2,text:'第2段'},   {id:3,text:'第3段'},   ]  }  } };
var parentNode = {
 template: `
 
 

父組件

       
  • {{ props.text }}
  •     
       `,  components: {  'child': childNode  }, };

    Vue中怎么使用slot實現內容分發

    關于Vue中怎么使用slot實現內容分發就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。


    網頁名稱:Vue中怎么使用slot實現內容分發
    網站路徑:http://www.xueling.net.cn/article/ipcgph.html 主站蜘蛛池模板: 一级片免费无码 | 饥渴女上位高潮呻吟在线播放 | 欧美videos另类精品 | 中国xxxx性xxxxx高清视频 | 欧美日本高清在线不卡区 | 欧美极品kennajames喷水 | 欧美成免费A级毛片 | 99久久精品国产综合婷婷 | 国产精品成人免费综合网 | 日本欧美在线视频 | 视频1区2区3区 | xxx.www国产| 欧美又大又粗无码视频 | 黄色一级免费观看 | 1024国产精品永远免费 | 九九爱精品 | 欧美福利精品 | 日本一区二区三区免费A片 1024手机在线观看你懂的 | 日韩和的一区二区 | 毛茸茸av| 穿越时空的少女免费观看动漫日语 | 被医生绑在妇科椅调教 | 欧美精品一区二区三区中文欧美人 | 免费夜里18款禁用b站软粉色 | 亚洲精品高清无码视频 | 国产真人无码AV在线观看 | 91爱视频 | 欧美激情性a片在线观看不卡 | 亚洲色一区二区三区四区 | 亚洲一区二区在线免费观看视频 | 欧美88 | 1769免费视频在线观看 | 美女黄a一级视频 | 国产精品一区二区久久久久 | 日本道dvd久久综合 久久亚洲精品国产亚洲老地址 | 欧美制服丝袜人妻另类 | 老太婆性杂交视频 | 国产精品毛片一区二区在线看 | 国内外成人免费在线视频 | 国产一区二区怡红院 | 日韩精品久久久久久免费 |