最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue中的slot使用插槽分發(fā)內(nèi)容的方法

 更新時間:2018年03月01日 16:26:49   作者:Brighten_Sun  
這篇文章主要介紹了Vue中的slot使用插槽分發(fā)內(nèi)容的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

本文題材來自:https://cn.vuejs.org/v2/guide/components.html#%E4%BD%BF%E7%94%A8%E6%8F%92%E6%A7%BD%E5%88%86%E5%8F%91%E5%86%85%E5%AE%B9

<slot></slot>標(biāo)簽,簡單來說就是占位符,它會幫你占好位置,等你需要的時候直接將html傳入,它會幫你顯示出來。

也有人說:props可以將數(shù)據(jù)從父組件傳入子組件,slot可以將html從父組件傳入子組件。那么如何實現(xiàn)呢?

單個插槽:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <script type="text/javascript" src="vue.min.js"></script>
  </head>
  <body>
    <div id="app">
      <h1>我是父組件的標(biāo)題</h1>
      <my-component>
        <p>這是一些初始內(nèi)容</p>
        <p>這是更多的初始內(nèi)容</p>
      </my-component>
    </div>
    <script type="text/javascript">
      Vue.component('my-component', {
       // 有效,因為是在正確的作用域內(nèi)
       template: '<div>\
              <h2>我是子組件的標(biāo)題</h2>\
              <slot>只有在沒有要分發(fā)的內(nèi)容時才會顯示。</slot>\
            </div>',
       data: function () {
        return {
         
        }
       }
      });
      new Vue({
        el:'#app',
        data:{
          msg:'你好啊'
        }
      })

    </script>
  </body>
</html>

組件中的模板中寫入slot標(biāo)簽,在父級調(diào)用子組件的時候傳入html即可。

具名插槽:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <script type="text/javascript" src="vue.min.js"></script>
  </head>
  <body>
    <div id="app">
      <my-component>
         <h1 slot="header">這里可能是一個頁面標(biāo)題</h1>

         <p>主要內(nèi)容的一個段落。</p>
         <p>另一個主要段落。</p>

         <p slot="footer">這里有一些聯(lián)系信息</p>
      </my-component>
    </div>
    <script type="text/javascript">
      Vue.component('my-component', {
       // 有效,因為是在正確的作用域內(nèi)
       template: '<div class="container">\
             <header>\
              <slot name="header"></slot>\
             </header>\
              <main>\
              <slot></slot>\
             </main>\
             <footer>\
              <slot name="footer"></slot>\
             </footer>\
            </div>',
       data: function () {
        return {
         
        }
       }
      });
      new Vue({
        el:'#app',
        data:{
          msg:'你好啊'
        }
      })

    </script>
  </body>
</html>

具名插槽,顧名思義當(dāng)有多個slot標(biāo)簽時,你需要給他們起個自己的名字,在父組件調(diào)用時需要slot="內(nèi)部的對應(yīng)名字",當(dāng)存在沒有命名的slot標(biāo)簽時,父級組件傳入的默認(rèn)html代碼將全部輸出在無名的slot標(biāo)簽中。

作用域插槽

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <script type="text/javascript" src="vue.min.js"></script>
  </head>
  <body>
    <div id="app">
       <!-- 在父級中,具有特殊特性 slot-scope 的 <template> 元素必須存在,表示它是作用域插槽的模板。slot-scope 的值將被用作一個臨時變量名,此變量接收從子組件傳遞過來的 prop 對象: -->
       <child>
        <template scope="props">
         <span>hello from parent</span><br>
         <span>{{ props.text }}</span>
        </template>
      </child>
    </div>
    <script type="text/javascript">
      // 在子組件中,只需將數(shù)據(jù)傳遞到插槽,就像你將 prop 傳遞給組件一樣:
      Vue.component('child',{
        template:'<ul>' +
              '<slot text="hello from child"></slot>' +
             '</ul>',
        data:function(){
         return {

         }
        },
      });
      new Vue({
        el:'#app',
        data:{
          msg:'你好啊'
        }
      })

    </script>
  </body>
</html>

作用域插槽是一種特殊類型的插槽,用作一個 (能被傳遞數(shù)據(jù)的) 可重用模板,來代替已經(jīng)渲染好的元素。

其實就是相當(dāng)于,在父組件中可以獲取到子組件傳遞出來的props對象,從而渲染到父組件上。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Vue列表頁渲染優(yōu)化詳解

    Vue列表頁渲染優(yōu)化詳解

    這篇文章主要為大家詳細(xì)介紹了Vue列表頁渲染優(yōu)化的操作,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • Vue手動埋點設(shè)計的方法實例

    Vue手動埋點設(shè)計的方法實例

    這篇文章主要給大家介紹了關(guān)于Vue手動埋點設(shè)計的相關(guān)資料,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,需要的朋友可以參考下
    2022-03-03
  • vue+element樹組件 實現(xiàn)樹懶加載的過程詳解

    vue+element樹組件 實現(xiàn)樹懶加載的過程詳解

    這篇文章主要介紹了vue+element樹組件 實現(xiàn)樹懶加載的過程,本文通過圖文實例代碼相結(jié)合給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-10-10
  • Vue實現(xiàn)點擊箭頭上下移動效果

    Vue實現(xiàn)點擊箭頭上下移動效果

    這篇文章主要介紹了Vue實現(xiàn)點擊箭頭上下移動效果,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • 詳解el Cascader懶加載數(shù)據(jù)回顯示例

    詳解el Cascader懶加載數(shù)據(jù)回顯示例

    這篇文章主要為大家介紹了詳解el Cascader懶加載數(shù)據(jù)回顯示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • Vue.js 單頁面多路由區(qū)域操作的實例詳解

    Vue.js 單頁面多路由區(qū)域操作的實例詳解

    這篇文章主要介紹了 Vue.js 單頁面多路由區(qū)域操作的實例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • vue路由守衛(wèi)+登錄態(tài)管理實例分析

    vue路由守衛(wèi)+登錄態(tài)管理實例分析

    這篇文章主要介紹了vue路由守衛(wèi)+登錄態(tài)管理,結(jié)合實例形式分析了vue路由守衛(wèi)與登錄態(tài)管理相關(guān)操作步驟與實現(xiàn)技巧,需要的朋友可以參考下
    2019-05-05
  • vue請求按順序執(zhí)行的示例詳解

    vue請求按順序執(zhí)行的示例詳解

    我們有時候會碰到這種情況,需要連續(xù)發(fā)送兩個請求,第二個請求需要用第一個請求的某個返回值作為參數(shù)來作為第二個請求的請求參數(shù),這篇文章主要介紹了vue請求如何按順序執(zhí)行,需要的朋友可以參考下
    2023-12-12
  • 基于Vue實現(xiàn)圖片在指定區(qū)域內(nèi)移動的思路詳解

    基于Vue實現(xiàn)圖片在指定區(qū)域內(nèi)移動的思路詳解

    這篇文章主要介紹了基于Vue實現(xiàn)圖片在指定區(qū)域內(nèi)移動,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-11-11
  • 尤雨溪開發(fā)vue?dev?server理解vite原理

    尤雨溪開發(fā)vue?dev?server理解vite原理

    這篇文章主要為大家介紹了尤雨溪開發(fā)的玩具vite,vue-dev-server來理解vite原理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07

最新評論

加查县| 寿宁县| 朝阳区| 无棣县| 河北区| 富锦市| 黔南| 铜陵市| 泰来县| 乌审旗| 时尚| 肃南| 南皮县| 梁河县| 巨野县| 长治市| 甘泉县| 理塘县| 天台县| 区。| 曲水县| 怀集县| 闽侯县| 综艺| 台前县| 怀宁县| 会理县| 梅河口市| 威宁| 宜丰县| 禄丰县| 巴林右旗| 高密市| 台东市| 韩城市| 磴口县| 铜陵市| 翁源县| 三穗县| 专栏| 东乌珠穆沁旗|