vue中父子組件如何相互調用方法

Vue 中父子組件如何相互調用方法

在 Vue 中,父子組件可以通過以下方法相互調用方法:

父組件調用子組件方法

  • 通過 props: 父組件向子組件傳遞一個 prop,該 prop 是一個函數,子組件可以調用它來觸發父組件的方法。
  • 通過 refs: 父組件通過 ref 獲取子組件的實例,然后可以直接調用子組件的方法。

子組件調用父組件方法

  • 通過 emit: 子組件使用 $emit 方法觸發一個自定義事件,父組件使用 v-on 綁定該事件并執行相應的函數。
  • 通過 provide/inject: 父組件通過 provide 提供一個函數,子組件通過 inject 注入該函數,然后可以直接調用該函數。

具體步驟

父組件調用子組件方法

使用 props:

<!-- 父組件 -->
<template><childcomponent :my-method="myMethod"></childcomponent></template><script>export default {methods: {myMethod() {console.log("父組件的方法被調用了");},},};
</script><!-- 子組件 --><template><button>觸發父組件的方法</button>
</template><script>export default {props: ['myMethod'],};
</script>

使用 refs:

<!-- 父組件 -->
<template><childcomponent ref="child"></childcomponent></template><script>export default {mounted() {this.$refs.child.myMethod(); // 調用子組件的方法},};
</script><!-- 子組件 --><template><button>觸發父組件的方法</button>
</template><script>export default {methods: {myMethod() {console.log("父組件的方法被調用了");},},};
</script>

子組件調用父組件方法

使用 emit:

<!-- 子組件 -->
<template><button>觸發父組件的事件</button>
</template><script>export default {methods: {triggerEvent() {this.$emit('my-event'); // 觸發父組件的事件},},};
</script><!-- 父組件 --><template><childcomponent></childcomponent></template><script>export default {methods: {myMethod() {console.log("子組件觸發了父組件的事件");},},};
</script>

使用 provide/inject:

<!-- 父組件 -->
<template><childcomponent></childcomponent></template><script>export default {provide() {return {myMethod: () => {console.log("父組件的方法被調用了");},};},};
</script><!-- 子組件 --><template><button>觸發父組件的方法</button>
</template><script>export default {inject: ['myMethod'],};
</script>

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/12466.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/12466.shtml
英文地址,請注明出處:http://en.pswp.cn/web/12466.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【現代C++】概念的使用

現代C&#xff08;特別是C20及以后的版本&#xff09;引入了概念&#xff08;Concepts&#xff09;&#xff0c;這是一種指定模板參數必須滿足的約束的方式。概念使得模板代碼更清晰&#xff0c;更容易理解和使用&#xff0c;并且能在編譯時提供更好的錯誤信息。以下是C概念的關…

UStaticMesh幾何數據相關(UE5.2)

UStaticMesh相關類圖 UStaticMesh的數據構成 UStaticMesh的FStaticMeshSourceModel UStaticMesh的Mesh幾何元數據來自于FStaticMeshSourceModel&#xff0c; 一級Lod就存在一個FStaticMeshSourceModel. FStaticMeshSourceModel幾何數據大致包含以下幾類: Vertex(點), VertexI…

【scikit-learn005】支持向量機(Support Vector Machines, SVM)ML模型實戰及經驗總結(更新中)

1.一直以來想寫下基于scikit-learn訓練AI算法的系列文章&#xff0c;作為較火的機器學習框架&#xff0c;也是日常項目開發中常用的一款工具&#xff0c;最近剛好擠時間梳理、總結下這塊兒的知識體系。 2.熟悉、梳理、總結下scikit-learn框架支持向量機&#xff08;Support Vec…

Maven(項目管理和LINUX)

目錄 一、整合IDEA 二、POM模型 三、依賴和繼承關系 依賴&#xff08;Dependency&#xff09; 依賴的基本結構 依賴傳遞性 依賴管理 繼承&#xff08;Inheritance&#xff09; 繼承的基本結構 繼承的特性 四、插件的使用 五、私服的使用 一、整合IDEA 在Maven項目…

基于springboot的醫院管理系統源碼數據庫

基于springboot的醫院管理系統源碼數據庫 隨著信息互聯網信息的飛速發展&#xff0c;醫院也在創建著屬于自己的管理系統。本文介紹了醫院管理系統的開發全過程。通過分析企業對于醫院管理系統的需求&#xff0c;創建了一個計算機管理醫院管理系統的方案。文章介紹了醫院管理系…

玩轉Matlab-Simscape(初級)- 06 - 基于Solidworks、Matlab Simulink、COMSOL的協同仿真(理論部分2)

** 玩轉Matlab-Simscape&#xff08;初級&#xff09;- 06 - 基于Solidworks、Matlab Simulink、COMSOL的協同仿真&#xff08;理論部分2&#xff09; ** 目錄 玩轉Matlab-Simscape&#xff08;初級&#xff09;- 06 - 基于Solidworks、Matlab Simulink、COMSOL的協同仿真&am…

風電功率預測 | 基于GRU門控循環單元的風電功率預測(附matlab完整源碼)

風電功率預測 風電功率預測 | 基于GRU門控循環單元的風電功率預測(附matlab完整源碼)完整代碼風電功率預測 | 基于GRU門控循環單元的風電功率預測(附matlab完整源碼) 完整代碼 clc; clear close allX = xlsread(風電場預測.xlsx)

python數據分析——seaborn繪圖2

參考資料&#xff1a;活用pandas庫 # 導入庫 import pandas as pd import matplotlib.pyplot as plt import seaborn as sns tipspd.read_csv(r"...\seaborn常用數據案例\tips.csv") print(tips.head()) 1、成對關系表示 當數據大部分是數據時&#xff0c;可以使用…

分享一個基于Qt的Ymodem的上位機(GitHub開源)

文章目錄 1.項目地址2.Ymodem 協議介紹3.文件傳輸過程4.使用5.SecureCRT 軟件也支持Ymodem6.基于PyQt5的Ymodem界面實現案例 1.項目地址 https://github.com/XinLiGH/SerialPortYmodem 基于VS2019 Qt5.15.2 編譯&#xff0c;Linux下編譯也可以&#xff0c;這里不做說明。 2.…

Python | Leetcode Python題解之第89題格雷編碼

題目&#xff1a; 題解&#xff1a; class Solution:def grayCode(self, n: int) -> List[int]:ans [0] * (1 << n)for i in range(1 << n):ans[i] (i >> 1) ^ ireturn ans

如何在云電腦實現虛擬應用—數據分層(應用分層)技術簡介

如何在云電腦實現虛擬應用—數據分層&#xff08;應用分層&#xff09;技術簡介 近幾年虛擬化市場實現了非常大的發展&#xff0c;桌面虛擬化在企業中應用越來越廣泛&#xff0c;其擁有的如下優點得到大量企業的青睞&#xff1a; 數據安全不落地。在虛擬化環境下面數據保存在…

STL庫簡介

一、STL庫的概念 STL&#xff1a;是C標準庫的重要追組成部分&#xff0c;不僅是一個可以復用的組件庫&#xff0c;而且還是一個包含了數據結構和算法的軟件框架。 二、STL的版本 原始版本 Alexander Stepanov、 Meng Lee 在惠普實驗室完成的原始版本&#xff0c; 是一個開源…

JVM 雙親委派機制詳解

文章目錄 1. 雙親委派機制2. 證明3. 優勢與劣勢 1. 雙親委派機制 類加載器用來把類加載到 Java 虛擬機中。從JDK1.2版本開始&#xff0c;類的加載過程采用雙親委派機制&#xff0c;這種機制能更好地保證 Java 平臺的安全。 1.定義 如果一個類加載器在接到加載類的請求時&…

react組件渲染性能優化之函數組件-useCallback使用

useCallback主要就是對函數進行緩存,useCallBack這個Hooks主要是解決React.memo不能緩存事件的問題 useCallBack(fn, dependencies) &#xff1a;fn想要緩存的函數&#xff0c;dependencies有關是否更新 fn 的所有響應式值的一個列表 比如&#xff1a;UseCallBackOptimize組件…

(done) NLP+HMM 協作,還有維特比算法

參考視頻&#xff1a;https://www.bilibili.com/video/BV1aP4y147gA/?p2&spm_id_frompageDriver&vd_source7a1a0bc74158c6993c7355c5490fc600 &#xff08;這實際上是 “序列標注任務”&#xff09; HMM 的訓練和預測如下圖 訓練過程&#xff1a;我們首先先給出一個語…

做一個桌面懸浮翻頁時鐘

毛玻璃效果翻頁桌面懸浮時鐘&#xff0c;TopMost&#xff08;Topmost“True”&#xff09;&#xff0c;不在任務欄顯示&#xff08;ShowInTaskbar“False”&#xff09;&#xff0c;在托盤區顯示圖標&#xff0c;雙擊托盤區圖標實現最小化和還原&#xff0c;右鍵托盤圖標可選“…

常見網絡攻擊及解決方案

網絡安全是開發中常常會遇到的情況&#xff0c;為什么會遇到網絡攻擊&#xff0c;網絡攻擊是如何進行的&#xff0c;如何抵御網絡攻擊&#xff0c;都是我們需要思考的問題。 為什么會遇到網絡攻擊&#xff1f; 以下是一些主要的因素&#xff1a; 技術漏洞&#xff1a;軟件或操…

web學習記錄--(5.14)

1.Sublime安裝與漢化 直接點擊windows即可下載&#xff0c;安裝即可 Thank You - Sublime Text 漢化 Install Package ChineseLocalzation 2.PHPstorm下載以及激活,漢化 直接下載&#xff0c;然后找激活碼激活即可 漢化 plugins&#xff08;插件&#xff09;/chinese&…

SpringBoot接收參數的19種方式

https://juejin.cn/post/7343243744479625267?share_token6D3AD82C-0404-47A7-949C-CA71F9BC9583

未授權訪問:ZooKeeper 未授權訪問漏洞

目錄 1、漏洞原理 2、環境搭建 3、未授權訪問 防御手段 今天繼續學習各種未授權訪問的知識和相關的實操實驗&#xff0c;一共有好多篇&#xff0c;內容主要是參考先知社區的一位大佬的關于未授權訪問的好文章&#xff0c;還有其他大佬總結好的文章&#xff1a; 這里附上大…