Vue父組件向子組件傳值以及data和props的區(qū)別詳解
1.在父組件中定義 msg 屬性
data:{
msg:'123 -我是父組件中的數(shù)據(jù)'
},
2.引用子組件
父組件可以在引用子組件的時候,通過屬性綁定的形式,把需要傳遞給子組件的數(shù)據(jù),以屬性綁定的形式,傳遞到子組件內(nèi)部,供子組件使用。
把父組件傳遞過來的 msg 屬性,綁定到子組件的 parentmsg 屬性上。
<com1 :parentmsg="msg"></com1>
3. 在子組件定義部分,需要把父組件傳遞過來的 parentmsg 屬性,先在props數(shù)組中定義一下(代表這個屬性是由父組件傳遞過來的),這樣,才能使用這個數(shù)據(jù)
props:['parentmsg'],
4.在子組件中使用
template:"<h1>這是子組件--{{parentmsg}}</h1>",
5.子組件中data和props的區(qū)別
子組件中的data數(shù)據(jù),不是通過父組件傳遞的是子組件私有的,是可讀可寫的。
子組件中的所有 props中的數(shù)據(jù),都是通過父組件傳遞給子組件的,是只讀的。
完整代碼:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<div id='app'>
<!-- 父組件可以在引用子組件的時候,通過屬性綁定的形式,把需要傳遞給子組件的數(shù)據(jù),
以屬性綁定的形式,傳遞到子組件內(nèi)部,供子組件使用 -->
<com1 :parentmsg="msg"></com1>
</div>
</body>
<script src="../lib/vue.js"></script>
<script>
var vm = new Vue({
el:'#app',
data:{
msg:'123-我是父組件中的數(shù)據(jù)'
},
components:{
//子組件中無法訪問父組件的data和methods
com1:{
//子組件中的data數(shù)據(jù),不是通過父組件傳遞的是子組件私有的
//data上的數(shù)據(jù),是可讀可寫的
data(){
return {
title:'123',
content:'qqq'
}
},
template:"<h1>這是子組件--{{parentmsg}}</h1>",
//注意,組件中的所有 props中的數(shù)據(jù),都是通過父組件傳遞給子組件的
//只讀
props:['parentmsg'],//把父組件傳遞過來的parentmsg屬性,
//先在props數(shù)組中定義一下,這樣,才能使用這個數(shù)據(jù)
methods:{
}
}
}
})
</script>
</html>

到此這篇關于Vue父組件向子組件傳值以及data和props的區(qū)別詳解的文章就介紹到這了,更多相關Vue父組件向子組件傳值內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
vue表格n-form中自定義增加必填星號的實現(xiàn)代碼
這篇文章主要介紹了vue表格n-form中自定義增加必填星號,本文通過實例代碼給大家介紹的非常詳細,需要的朋友可以參考下2024-12-12
vue中的事件修飾符once,prevent,stop,capture,self,passive
這篇文章主要介紹了vue中的事件修飾符once,prevent,stop,capture,self,passive,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-04-04

