Vue之組件之間的數據傳遞

Vue的組件作用域都是孤立的,不允許在子組件的模板內直接引用父組件的數據,必須使用特定的方法才能實現組件之間的數據傳遞。

下列為在vue-cli創建項目中的操作

一·父組件向子組件傳遞數據

在Vue中,用props向子組件傳遞數據。

子組件部分:
 1 <template>
 2     <div class='header'>{{logo}}</div>
 5 </template>
 6 <script>
 7      export default{
 8           name:"headerDiv",
 9           data(){
10                   return {
11                        ............ 
12                   }
13           },
14           props:["logo"]
15      }
16 </script>?

如果需要從父組件獲取logo值,就需要使用props:['logo']

在props中添加了元素之后,就不需要在data中再添加變量了

父組件部分:

 1 <template>
 2      <div id='app'>
 3            <HeaderDiv :logo="logoMsg"></HeaderDiv>
 4      </div>
 5 </template>
 6 <script>
 7      import HeaderDiv from './compontents/header'
 8 
 9      export default{
10            name:'app',
11            data(){
12                  return {
13                        logoMsg:'VUE'
14                  }
15            },
16            components:{
17                 HeaderDiv
18            }
19      }
20 </script>

?二·子組件向父組件傳遞數據

子組件主要通過事件傳遞數據給父組件

子組件部分:

 1 <template>
 2      <div class='header'>
 3            <input v-model="name" @change="getCh">
 4      </div>
 5 </template>
 6 <script>
 7      export default {
 8          name:'header',
 9          data(){
10                 return {
11                        name:'' 
12                 }
13          },
14          methods:{
15                getCh:function(){
16                     this.$emit('setCh',this.name)
17                }
18          }
19      }
20 </script>

當name變化時,將name傳給父組件,

在getCh中用$emit來遍歷setCh事件,并返回this.name

setCh是一個自定義事件,this.name通過該事件傳遞給父組件

父組件部分:

<template><div id='app'><HeaderDiv @trans='getCh'></HeaderDiv><div>{{user}}</div></div>
</template>
<script>import  HeaderDiv from './components/header'export  default {name:'app',data(){return {name:''}},methods:{getCh(msg){this.name=msg}},components:{HeaderDiv}} 
</script>

?三·子組件互相傳值

1.在main.js里全局定義eventBus

2.firstchild.vue

<template><div><button @click="btn">我是子組件一</button></div>
</template>
<style type="text/css"></style>
<script type="text/javascript">export default{name:'Firstchild',methods:{btn(){console.log('start');eventBus.$emit('name','hello')}}}
</script>

3.secondchild.vue

<template><div><button @click="btn2">我是子組件二</button></div>
</template>
<style type="text/css"></style>
<script type="text/javascript">export default{name:'Secondchild',methods:{btn2(){console.log('end');eventBus.$on('name',function(val){console.log('我是firstchild組件傳過來的'+val)})}}}
</script>  

?運行結果

?

轉載于:https://www.cnblogs.com/wdxue/p/7541672.html

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

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

相關文章

偶然發現一個大佬寫的 React 腳手架,叫Moderate, 用起來很方便

發現一個大佬寫的 React 腳手架&#xff0c;叫Moderate, 用起來很方便 Moderate&#xff0c;意思為適中的&#xff0c;適度的&#xff0c;用這個作為代號&#xff0c;主要取決于他的本名“中用”&#xff0c;其一以貫之的想法就是中庸&#xff0c;秉承著以人為本的態度&#xf…

案例 自動辦公_1300張辦公系列前臺參考圖,請您查收!

設計情報局室內設計師的靈感聚集地關注一個有格調的空間必定有一處高顏值的前臺漂亮的前臺很重要...是空間給人的第一印象一個獨一無二的前臺設計還可以提升整個空間的氣質與逼格連個漂亮的前臺都沒有作為顏控界扛把子的設計師們還怎么混&#xff1f;SO今天小編給大家帶來一份《…

iframe里面的元素觸發父窗口元素事件的jquery代碼 轉

例如父窗口定義了一個事件。 top: $(dom1).bind(topEvent, function(){}); 那么iframe里面的元素怎樣觸發父窗口dom1的事件呢&#xff1f;這樣嗎&#xff1f; $(dom1, parent.document).trigger(topEvent); 看似正確&#xff0c;實則誤導人。 因為父窗口的jquery對象與iframe里…

mplayer 所支持的音視頻編解碼

這里我把mplayer 所支持的音視頻編解碼都羅列出來&#xff0c;方便大家查閱&#xff1b;-----------------------------------------------------------------------------------------------Video codecs:Working video codecscodec namefourcccodecfileoutcommentsFFmpeg Zip…

使用ifconfig取出網卡eth0的ip地址

方法1&#xff1a;sed命令12[rootoldboyedu ~]# ifconfig eth0 |sed -n 2p |seds#^.*addr:##g|sed s# B.*$##g10.0.0.50方法2&#xff1a;cut12[rootoldboyedu ~]# ifconfig eth0|grep inetaddr|cut -d ":" -f2|cut -d " " -f110.0.0.50方法3&#xff1a;…

目標檢測_目標檢測 | Anchor free的目標檢測進階版本

今天說的是《Soft Anchor-Point Object Detection》&#xff0c;其也是最近關于anchor free的目標檢測的論文&#xff0c;作者來自于CMU&#xff0c;一作同樣也是FSAF(2019 CVPR)的作者。該論文的出發點還是在樣本選擇和FPN特征選擇層面。背景Anchor free是目標檢測領域的一個研…

Colly實現豆瓣電影Top250爬取

使用 Colly 實現 豆瓣電影Top250爬取 package mainimport ("encoding/csv""github.com/PuerkitoBio/goquery""github.com/gocolly/colly""log""os""strings""time" )type Movie struct {idx string…

homework1

一.什么是RUP?二.什么是XP?三.什么是敏捷過程&#xff1f; 一。什么是RUP?RUP是一種完整而且完美的軟件過程 1。最佳實踐 &#xff08;1&#xff09;迭代式開發 &#xff08;2&#xff09;管理需求 &#xff08;3&#xff09;使用基于構件軟件的體系結構 &#xff08;4&…

編程:休息片刻的好處

原文作者 Axel Rauschmayer 是一位居住在德國慕尼黑的自由軟件工程師。他在這篇博文列舉了在編程期間休息片刻的一些好處。 你會更精明而不是更賣力地工作。我曾經為了一個功能的實現而賣力工作過。每天12小時&#xff0c;整整工作了兩個星期。我付出了很多努力。那兩個星期之…

五個溫度帶的分界線_女神建筑師在拿破侖故鄉打造的海景別墅,超美!超有溫度!【環球設計2225期】...

生活的溫度 法國建筑師阿米莉亞塔維拉(Amelia Tavella)一直對設計充滿熱情&#xff0c;她出生在阿雅克肖市&#xff0c;在巴黎的建筑學院學習建筑專業&#xff0c;如今她居住普羅旺斯地區的艾克斯。她說&#xff1a;“設計讓我涉足很多有趣的領域并能充分發揮我的想象力。這是一…

1118. Birds in Forest (25)

并查集。。。要用路徑壓縮&#xff0c;不然會超時&#xff0c; #include<iostream> #include<string> #include<map> #include<vector> #include<algorithm> #include<queue> #include<set> #include<stack> using namespace …

Java線程池有哪些作用

線程池 線程池的作用 核心點:復用機制提前創建好固定的線程一直在運行狀態實現復用限制線程創建數量。 1.降低資源消耗:通過池化技術重復利用已創建的線程&#xff0c;降低線程創建和銷毀造成的損耗。 2.提高響應速度:任務到達時&#xff0c;無需等待線程創建即可立即執行。…

中國重名的市轄區

中國重名的市轄區 截止2016年7月31日 新華區(3) 河北省石家莊市新華區 河北省滄州市新華區 河南省平頂山市新華區 橋西區(3) 河北省石家莊市橋西區 河北省邢臺市橋西區 河北省張家口市橋西區 海州區(2) 遼寧省阜新市海州區 江蘇省連云港市海州區 郊區(4) 山西省陽泉市郊區 山西…

安卓關于圖片壓縮的那些事兒,希望給每個安卓開發人員一些幫助

從事安卓開發也有幾年了,本人喜歡開門見山,此篇文章是處理以java語言下的安卓開發過程中圖片壓縮問題。 圖片加載在我們的開發過程中都是一個內存大戶,以至于我們加載每一個圖片bitmap對象的時候都應該進行回收以減少內存的占用&#xff0c;而如果單張圖片的大小加載在內存都會…

銀行it現狀調研_中央銀行系統行業現狀調研分析及發展趨勢預測報告(2019年版)...

QYResearch預測&#xff1a;2019-2025全球與中國中央銀行系統市場現狀及未來發展趨勢【紙版價格】&#xff1a;RMB 15000【電子版(PDF)價格】&#xff1a;RMB 15000【報告篇幅】&#xff1a;112【報告圖表數】&#xff1a;158【報告出版時間】&#xff1a;2019年11月報告摘要本…

視頻編解碼技術小結

1、什么是H.261編碼協議 答&#xff1a;H.261是最早出現的視頻編碼建議&#xff0c;它采用的算法結合了可減少時間冗余的幀間預測和可減少空間冗余的DCT變換的混合編碼方法&#xff0c;其輸出碼率是p64kbit/s。p取值較小時&#xff0c;只能傳清晰度不太高的圖像&#…

fiber報錯 (type *big.Int has no field or method FillBytes)

如何繞過dgrijalva/jwt go中的cve-2020-26160漏洞 go jwt jwt-go由于存在一個高級漏洞&#xff0c;Gitlab管道中無法傳遞容器安全狀態。此漏洞為jwt-go&#xff0c;安裝的版本為v3.2.0incompatible。錯誤標題如下&#xff1a;jwt-go: access restriction bypass vulnerability…

基于BISS0001構成的熱釋電紅外延時照明控制器電路圖

BISS0001是采用CMOS數模混合結構、具有DIP-16和SOIC-16兩種封裝的熱釋電紅外傳感信號處理集成電路。芯片內部集成了電壓比較器、狀態控制器、延時電路定時器、封鎖時間定時器以及參考電壓源等電路&#xff0c;常用于防盜報警器、自動門等各種自動開關。利用BISS0001構成的熱釋電…

安卓APP破解利器之FRIDA

本文講的是安卓APP破解利器之FRIDA&#xff0c;在我去年參加RadareCon大會的時候&#xff0c;我了解到了一個動態的二進制插樁框架——Frida。起初我覺得它似乎只有一丁點趣味&#xff0c;后來經過實踐才發現它原來是如此的有趣。記得游戲里的上帝模式嗎&#xff1f;這就是Frid…

如何獲取option的下標和值_數智化時代下,如何獲取企業增長密碼?

信息化時代下&#xff0c;很多企業前前后后上線了各種信息化系統&#xff0c;ERP、OA、CRM…隨著企業數字化的深入推進&#xff0c;“移動互聯網、云計算、大數據、人工智能、物聯網、區塊鏈”等技術的革新&#xff0c;這些信息化系統難以滿足企業對數智化轉型的新需求&#xf…