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

Vue子組件調(diào)用父組件事件的3種方法實(shí)例

 更新時(shí)間:2024年01月11日 11:43:09   作者:嗯哼姐  
大家在做vue開(kāi)發(fā)過(guò)程中經(jīng)常遇到父組件需要調(diào)用子組件方法或者子組件需要調(diào)用父組件的方法的情況,這篇文章主要給大家介紹了關(guān)于Vue子組件調(diào)用父組件事件的3種方法,需要的朋友可以參考下

1. 在子組件中通過(guò)this.$parent.event來(lái)調(diào)用父組件的方法,data參數(shù)可選

<template>
  <div>
    <h1>我是父組件</h1>
    <child />
  </div>
</template>
<script>
  import child from '@/components/child';
  export default {
    components: {
      child
    },
    methods: {
      fatherMethod(data) {
        console.log('我是父組件方法');
      }
    }
  };
</script>
<template>
  <div>
    <h1>我是子組件</h1>
    <button @click="childMethod(data)">點(diǎn)擊</button>
  </div>
</template>
<script>
  export default {
    methods: {
      childMethod() {
        this.$parent.fatherMethod(data);
        console.log('調(diào)用父組件方法')
      }
    }
  };
</script>

2.父組件使用v-bind綁定一個(gè)變量(v-bind:變量名="值"),子組件用props接收(與created同級(jí))

<template>
  <div>
    這是父組件
    <child :parentHandler="parentHandler" />
  </div>
</template>
<script>
import child from "@/components/child";
export default {
  components: { child },
  data() {
    return {};
  },
  methods: {
    parentHandler() {
      console.log("這是父組件的方法");
    },
  },
};
</script>
<template>
  <div>
    這是子組件
    <button @click="handler">這是子組件的按鈕</button>
  </div>
</template>
<script>
export default {
  props: {
    parentHandler: {
      type: Function,
      default: () => {
        return Function;
      },
    },
    //parentHandler: {
    //   type: Object,
    //   default: () => {
    //     return {}
    //   },
    //},
    // parentHandler: {
    //   type: Boolean,
    //   default: true,
    // },
    // parentHandler: {
    //   type: Array,
    //   default: () => {
    //     return []
    //   },
    // },
    // parentHandler: {
    //   type: String,
    //   default: '',
    // },
  },
  methods: {
    handler() {
      this.parentHandler();
    },
  },
};
</script>

3.使用$refs傳值

<template>
  <div>
    <h3>這是父組件</h3>
    <button @click="setChildInfo">向子組件傳值</button>
    <h3>這是父組件中引用的子組件</h3>
    <child ref="child"></child>
  </div>
</template>

<script>
//子組件地址(僅供參考),具體以實(shí)際項(xiàng)目目錄地址為準(zhǔn)
import child from "./Child.vue";
export default {
  components: {
    child: child
  },
  data() {
    return {};
  },
  methods: {
    // 向子組件傳值
    setChildInfo() {
      this.$refs.child.cInfo = "c2";
      //this.$refs.child.open("c2");
    }
  }
};
</script>
<template>
  <div>
    <p>收到父組件數(shù)據(jù):{{ cInfo }}</p>
  </div>
</template>

<script>
export default {
  data() {
    return {
      cInfo: "c1"
    };
  },
  methods: {
    //open(data) {
    //  console.log(data);
    //},
  },
};
</script>

總結(jié) 

到此這篇關(guān)于Vue子組件調(diào)用父組件事件的3種方法的文章就介紹到這了,更多相關(guān)Vue子組件調(diào)用父組件事件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue通過(guò)ref獲取不到$refs問(wèn)題

    Vue通過(guò)ref獲取不到$refs問(wèn)題

    這篇文章主要介紹了Vue通過(guò)ref獲取不到$refs問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • vue pages 多入口項(xiàng)目 + chainWebpack 全局引用縮寫(xiě)說(shuō)明

    vue pages 多入口項(xiàng)目 + chainWebpack 全局引用縮寫(xiě)說(shuō)明

    這篇文章主要介紹了vue pages 多入口項(xiàng)目 + chainWebpack 全局引用縮寫(xiě)說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-09-09
  • vue移動(dòng)端寫(xiě)的拖拽功能示例代碼

    vue移動(dòng)端寫(xiě)的拖拽功能示例代碼

    這篇文章主要介紹了vue移動(dòng)端寫(xiě)的拖拽功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • vue?cesium加載點(diǎn)與定位到指定位置的實(shí)現(xiàn)方法

    vue?cesium加載點(diǎn)與定位到指定位置的實(shí)現(xiàn)方法

    Cesium是一個(gè)用于創(chuàng)建高性能、跨平臺(tái)的3D地球和地圖的開(kāi)源JavaScript庫(kù),它提供了許多功能,包括地理空間數(shù)據(jù)可視化、地理定位和地圖導(dǎo)航等,這篇文章主要介紹了vue?cesium加載點(diǎn)與定位到指定位置,需要的朋友可以參考下
    2024-03-03
  • Vue?插件及瀏覽器本地存儲(chǔ)

    Vue?插件及瀏覽器本地存儲(chǔ)

    這篇文章主要介紹了Vue?插件及瀏覽器本地存儲(chǔ),插件通常用來(lái)為Vue添加全局功能,包含install方法的一個(gè)對(duì)象。更多相關(guān)介紹,需要的小伙伴可以參考下面文章內(nèi)容
    2022-05-05
  • 前端之vue3使用WebSocket的詳細(xì)步驟

    前端之vue3使用WebSocket的詳細(xì)步驟

    websocket實(shí)現(xiàn)的全雙工通信,真真太香了,下面這篇文章主要給大家介紹了關(guān)于前端之vue3使用WebSocket的詳細(xì)步驟,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11
  • 學(xué)習(xí)vue.js條件渲染

    學(xué)習(xí)vue.js條件渲染

    這篇文章主要和大家一起學(xué)習(xí)vue.js條件渲染,代碼注釋詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • vue報(bào)錯(cuò)"vue-cli-service‘不是內(nèi)部或外部命令,也不是...”的解決辦法

    vue報(bào)錯(cuò)"vue-cli-service‘不是內(nèi)部或外部命令,也不是...”的解決辦法

    這篇文章主要介紹了vue報(bào)錯(cuò)"vue-cli-service‘不是內(nèi)部或外部命令,也不是...”的解決辦法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-01-01
  • vue?element-plus圖片預(yù)覽實(shí)現(xiàn)方法

    vue?element-plus圖片預(yù)覽實(shí)現(xiàn)方法

    這篇文章主要給大家介紹了關(guān)于vue?element-plus圖片預(yù)覽實(shí)現(xiàn)的相關(guān)資料,最近的項(xiàng)目中有圖片預(yù)覽的場(chǎng)景,也是踩了一些坑,在這里總結(jié)一下,需要的朋友可以參考下
    2023-07-07
  • Vue表情輸入組件 微信face表情組件

    Vue表情輸入組件 微信face表情組件

    這篇文章主要為大家詳細(xì)介紹了Vue表情輸入組件,微信face表情組件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-02-02

最新評(píng)論