亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

vue組件間的參數(shù)傳遞實(shí)例詳解

 更新時(shí)間:2019年04月26日 14:23:47   作者:lianjy357  
這篇文章主要介紹了vue組件間的參數(shù)傳遞 ,需要的朋友可以參考下

場(chǎng)景分析

在前端開(kāi)發(fā)中,我們常常會(huì)運(yùn)用到“組件庫(kù)”。在main入口中引入組件庫(kù),就可以很輕松的在頁(yè)面中引入,并做一些基本的配置,如樣式,顏色等。只需要在引入的組件中寫(xiě)入特定的屬性,就能夠定義。

舉例說(shuō)明

例如:element-ui組件庫(kù)中使用switch開(kāi)關(guān),有個(gè)屬性active-color是設(shè)置“打開(kāi)時(shí)”的背景色。change事件是觸發(fā)狀態(tài)的事件。

<el-switch
 v-model="value"
 :active-color="activecolor"
 @change="touchSwitch">
</el-switch>

<script>
 export default {
  data() {
   return {
    value: true,
    activecolor: '#13ce66'
   }
  },
  methods: {
   touchSwitch () {
    // 這里入方法
   }
  }
 };
</script>

分析代碼

我們分析上面的代碼

首先我們可以看到active-color是將特定的數(shù)據(jù)傳給組件,也就是父?jìng)髯咏M件。

其次是@change雖然監(jiān)聽(tīng)的是改變事件,但是語(yǔ)法糖依然是$emit,什么emit我們?cè)谝院蟮奈恼轮袝?huì)講到,就是“拋出事件”。

這就分為組件的最基本功能:

•數(shù)據(jù)進(jìn)
•事件出

那組件的使用我們知道了,通過(guò)active-color傳入?yún)?shù),通過(guò)@來(lái)接收事件。
 所以,我們來(lái)探究一下組件的內(nèi)部結(jié)構(gòu)是什么樣的?

我寫(xiě)了一個(gè)小模型,是一個(gè)顯示標(biāo)題的小按鈕,通過(guò)div包裹。

<!-- type-box.vue -->
<template>
 <div class="box" @click="ai_click(title)">{{title}}</div>
</template>

<script>
export default {
 name: 'type-box',
 props: {
  title: {
   type: String,
   default: () => ''
  }
 },
 methods: {
  ai_click (title) {
   this.$emit('ai_click', title)
  }
 }
}
</script>

<style scoped>
 .box{
  width: 250px;
  height: 100px;
  margin: 10px;
  border-radius: 10px;
  background-color: #3a8ee6;
  color: white;
  font-size: 25px;
  line-height: 100px;
  text-align: center;
  cursor: pointer;
 }
</style>

使用方法:

<!-- 父組件使用 -->
<template>
 <div>
  <type-box title="演示盒子" @ai_click=“touch”></type-box>
 </div>
</template>
<script>
import typeBox from './type-box'
export default {
 components: {
  typeBox
 },
 methods: {
  touch (data) {
   console.log(data)
  }
 }
}
</script>

分析組件

接收

通過(guò)props接收父組件傳遞過(guò)來(lái)的數(shù)據(jù),通過(guò)工廠函數(shù)獲取一個(gè)默認(rèn)值。

傳遞

通過(guò)this.$emit('ai_click', title)告訴父組件,我要傳遞一個(gè)事件,名字叫“ai_click”,請(qǐng)通過(guò)@ai_click接收一下,并且我將title的值返回父組件。

總結(jié)

所以今天分析vue組件的3大核心概念的其中兩個(gè)——屬性和事件。

 這篇文章只分析到應(yīng)用場(chǎng)景,也是最簡(jiǎn)單的組件。希望后續(xù)能夠深入了解vue的組件概念:屬性、事件和插槽。

以上所述是小編給大家介紹的vue組件間的參數(shù)傳遞實(shí)例詳解,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!

相關(guān)文章

最新評(píng)論