vue3 学习之路

一、父子组件之间值传递

<Menu title="tiltle" :list="[1,2]"></Menu>

//定义接收类型
type Props = {
  title?: String;
  list?: number[];
};
//接收父组件传递过来的值
//defineProps<Props>();
//接收父组件传递的值,并且可以赋默认值
withDefaults(defineProps<Props>(), {
  title: "景云",
  list: () => [2, 34],
});

//点击事件 defineEmits 给父组件传递值
const list = reactive<number>([1, 2, 3]);
const emits = defineEmits(["getList"]);
const clickTap = () => {
  emits("getList", list);
};


const edit = () => {
  console.log("执行了子组件的方法");
};
const flag = ref<boolean>(false);

// 父组件获取子组件的某个字段或者值,对父组件暴露出去值或者函数
defineExpose({
  edit,
  flag,
});

//父组件
<Menu @getList="getList" ref="menus"></Menu>

const menus = ref(null);
const changeChild = () => {
  menus.value.flag = !menus.value.flag;
  menus.value.edit();
};

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值