vue3官方文档
defineProps
和defineEmits
都是只能在中使用的编译器宏。他们不需要导入,且会随着
的处理过程一同被编译掉。
defineProps
接收与props
选项相同的值,defineEmits
接收与emits
选项相同的值。
父传子 -defineProps
父组件
我是父组件
import {ref} from 'vue'import Son from './son.vue'const ftext = ref('我是父组件-text')
子组件
我是子组件
接收到的值:{{ftext}}
import {ref} from 'vue'// setup 语法糖写法//defineProps 来接收组件的传值const props = defineProps({ftext: {type:String},})
子传父 – defineEmits
子组件:
我是子组件
import {ref} from 'vue'// setup 语法糖写法//用defineEmits()来定义子组件要抛出的方法,语法defineEmits(['要抛出的方法'])const emit = defineEmits(['exposeData'])const stext = ref('我是子组件的值-ftext')const toValue = ()=>{emit('exposeData',stext)}
父组件:
我是父组件