91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue中slot分發內容的示例分析

發布時間:2022-03-30 09:01:43 來源:億速云 閱讀:181 作者:小新 欄目:開發技術

這篇文章主要為大家展示了“vue中slot分發內容的示例分析”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“vue中slot分發內容的示例分析”這篇文章吧。

slot分發內容 (多個分發)

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

<style media="screen">
    .panel{
      margin:10px;width:150px;
      border:1px solid #ccc
    }
    .panel-header,.panel-bottom{
      height: 20px;
      background-color:antiquewhite;
    }
    .panel-body{
      min-height: 50px;
    }
  </style>
<div class="app">
    <!--多個slot分發內容 v-for遍歷-->
     <panel2 v-for="item in list">
       <h3 slot="title">{{item.title}}</h3>
       <p slot="desc">{{item.desc}}</p>
       <span slot="tims">{{item.tims}}</span>
     </panel2>
  </div>
<!--組件模板-->
<script type="text/x-Template" id="panelTpl">
   <div class="panel">
       <div class="panel-header"><slot name="title"></slot></div>
       <div class="panel-body">
         <slot name="desc"></slot>
       </div>
       <div class="panel-bottom"><slot name="tims"></slot></div>
   </div>
</script>
<script type="text/javascript">
var panelTpl={
  template:'#panelTpl'
}
var vm=new Vue({
  el:'.app',
  components:{//注冊組件
    "panel2":panelTpl
  },
  data:{
    list:[
      {title:'新聞一標題',desc:'一的描述',tims:'2018-07-19'},
      {title:'新聞二標題',desc:'二的描述',tims:'2018-07-18'},
      {title:'新聞三標題',desc:'三的描述',tims:'2018-07-17'}
    ]
  }
});
</script>

vue中slot分發內容的示例分析

slot的多種用法

基本用法

//組件
<template>
    <div class="com">
        <slot name="header"></slot>
        <slot>如果沒有插槽或者不具名就是顯示當前</slot>
        <slot name="floot"></slot>
    </div>
</template>
<script>
    export default {
        
    }
</script>
 
//使用
<template>
	<div id="app">
		<com>
			<div class="header" slot="header">
				我將會插入到名為header的插槽當中
			</div>
			<div class="floot" slot="floot">
				我將會插入到名為floot的插槽當中
			</div>
		</com>
	</div>
</template>
<script>
import com from '@/components/com.vue';
export default {
	name:"App",
	components:{
		com
	}
}
</script>

插槽中使用data

//組件
<template>
    <div class="com">
        <slot name="header" :slotData="comData"></slot>//slotData表示插槽key值
        <slot>如果沒有插槽或者不具名就是顯示當前</slot>
        <slot name="floot" :slotData="comData"></slot>
    </div>
</template>
 
<script>
    export default {
        data() {
            return {
                comData:{
                    header:"我將會插入到名為header的插槽當中",
                    floot:"我將會插入到名為floot的插槽當中"
                }
            }
        },
    }
</script>
 
//使用
<template>
	<div id="app">
		<com>
			<template v-slot:header="{slotData}">
                //必須使用template包裹,v-slot后面跟著的是插槽名,slotData插槽里表示的key值
				<div class="header">
					{{slotData.header}}
				</div>
			</template>
			<template v-slot:floot="{slotData}">
				<div class="floot">
					{{slotData.floot}}
				</div>
			</template>
		</com>
	</div>
</template>
<script>
import com from '@/components/com.vue';
export default {
	name:"App",
	components:{
		com
	}
}
</script>

動態插槽

//組件
<template>
    <div class="com">
        <slot name="header" :slotData="comData"></slot>
        <slot name="body" :slotData="comData"></slot>
        <slot name="floot"></slot>
    </div>
</template>
 
<script>
    export default {
        data() {
            return {
                comData:{
                    header:"我將會插入到名為header的插槽當中",
                    body:"我將會插入到名為body的插槽當中"
                }
            }
        },
    }
</script>
 
//使用
<template>
	<div id="app">
		<com>
			<template v-slot:[slotName]="{slotData}">
				<div class="slot">
					{{slotData[slotName]}}
				</div>
			</template>
			<div class="floot" slot="floot">
				<button @click="changeSlotName">改變動態插槽</button>
			</div>
		</com>
	</div>
</template>
<script>
import com from '@/components/com.vue';
export default {
	name:"App",
	components:{
		com
	},
	data(){
		return{
			slotName:"header"
		}
	},
	methods: {
		changeSlotName(){
			this.slotName = this.slotName === "header" ? "body" : "header";
		}
	}
}
</script>

以上是“vue中slot分發內容的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

连州市| 苗栗市| 揭阳市| 双峰县| 钦州市| 灵璧县| 子洲县| 杭州市| 清水县| 大庆市| 宜君县| 丰镇市| 开封市| 阳江市| 台中县| 祁连县| 四子王旗| 福建省| 西安市| 承德市| 河北省| 敖汉旗| 北辰区| 双柏县| 南漳县| 增城市| 静乐县| 泾阳县| 进贤县| 张北县| 浦北县| 二连浩特市| 扎鲁特旗| 墨江| 舞钢市| 敖汉旗| 宣威市| 郸城县| 陇川县| 桦甸市| 方城县|