知識點:vue中使用props或者$attras向子組件中傳值html
(1) props傳值vue
子組件必須註冊好要傳的數據()this
props:['id']spa
(2)$attrs傳值component
該數據在props中,沒有註冊過,如註冊過了,則$attrs中無此數據htm
父組件:blog
<div id="parent" v-cloak>
<template>
<mychild :id="id" :strname="strname" :age="age" ></mychild>
</template>ip
</div>
<script>
new Vue({
el: '#parent',
data:function() {
return {
id:1001,
strname:'名稱',
age:25
}
},
});
</script>
子組件:
var html_mychild =
+ " <div>\n"
....頁面內容
+ " </div>\n"
Vue.component('mychild', {
template: html_mychild,
props: ['id'], //1. props傳值,註冊id,id和:id="id" 冒號後面的id名稱同樣
data: function () {
return {
id:this.id
}
},
created: function () {
var id=this.id;//獲取父組件傳過來的,props註冊過的id值
var attr=this.$attrs;//2.$attrs傳值,獲取父組件傳過的全部的,而且不在props中註冊過的值
var name = this.$attrs.strname;
},
});
上面獲取的值以下