props:外部数据、属性
语法
message="n"传入字符串
:message="n"传入vue实例的this.n数据
:fn="add"传入vue实例的this.add函数
示例一
import Vue from 'vue'
Vue.config.productionTip = false;
import Demo from './demo.vue'
new Vue({
components: { Demo },
template: `
<div>
这是父组件{{n}}
<hr>
<Demo :message="n">
</div>`,
data() {
return {
n: 0
}
}
}).$mount('#app')
//demo.vue文件
<template>
<div>
这是demo拿到的数据{{message}} //组件中的数据message
</div>
</template>
<script>
export default {
props:['message']
}
</script>
示例二
import Vue from 'vue'
Vue.config.productionTip = false;
import Demo from './demo.vue'
new Vue({
components: { Demo },
template: `
<div>
这是父组件{{n}}
<hr>
<Demo :message="n" :fn="add"/>
</div>`,
data() {
return {
n: 0
}
},
methods: {
add() {
return this.n += 1
}
}
}).$mount('#app')
//demo.vue文件
<template>
<div>这是demo拿到的数据{{message}} //子组件message值
<button @click="fn">+1</button> //子组件调用fn属性
</div>
</template>
<script>
export default {
props:['message','fn']
}
</script>