1. 程式人生 > >vue 父子組件

vue 父子組件

ops 進行 exp console too size import 點擊 template

組件

什麽是組件?

組件 (Component) 是 Vue.js 最強大的功能之一。組件可以擴展 HTML 元素,封裝可重用的代碼。在較高層面上,組件是自定義元素,Vue.js 的編譯器為它添加特殊功能。在有些情況下,組件也可以表現為用 is 特性進行了擴展的原生 HTML 元素。

所有的 Vue 組件同時也都是 Vue 的實例,所以可接受相同的選項對象 (除了一些根級特有的選項) 並提供相同的生命周期鉤子。

使用組件

示例:

  子組件:

技術分享圖片
<template>
  <div>
    child
  </div>
</template>
 
<script>
  export default {
    name: "child",
    props: "someprops",
    methods: {
      parentHandleclick(e) {
        console.log(e)
      }
    }
  }
</script>
技術分享圖片

  組件:

技術分享圖片
<template>
  <div>
    <button @click="clickParent">點擊</button>
    <child ref="mychild"></child>
  </div>
</template>
 
<script>
  import Child from ‘./child‘;
  export default {
    name: "parent",
    components: {
      child: Child
    },
    methods: {
      clickParent() {
        this.$refs.mychild.parentHandleclick("嘿嘿嘿");
      }
    }
  }
</script>
技術分享圖片

註意:

   1、在子組件中:<div></div>是必須要存在的

  2、在父組件中:首先要引入子組件 import Child from ‘./child‘;

   3、 <child ref="mychild"></child>是在父組件中為子組件添加一個占位,ref="mychild"是子組件在父組件中的名字

   4、父組件中 components: {  是聲明子組件在父組件中的名字

5、在父組件的方法中調用子組件的方法,很重要 this.$refs.mychild.parentHandleclick("嘿嘿嘿");

vue 父子組件