【无标题】vue3 script setup以及defineProps,defineEmits

script setup

最新的vue3.2版本更新了新的语法糖,就是 setup 可以直接写在script里面。

<script setup lang="ts"></script>

之前的写法是serup() 并且还需要retun。
更新之后可是使用顶层await ,结果会被编译为 async setup()。
组件引入便可直接使用

<script setup>
import MyComponent from './MyComponent.vue'
</script>

<template>
  <MyComponent />
</template>

defineProps和defineEmits

组件传值是常用的一个东西,使用方法也没有改变太多。

defineProps

父组件

<HelloWorld msg="Hello chen" name="cqy"  />

子组件

const props = defineProps({
  msg:String,
  name:String
})

msg和name就可以直接拿来用了

defineEmits

子组件

<template>
  <h1 @click="myClick">{{ msg }}+++{{name}}</h1>
 <template>
 
const emit=defineEmits(['myClick'])
const myClick = () => {
  const data ='传参'
  emit("myClick",data)
}

父组件

<HelloWorld @myClick="myClick" />

const myClick = (e: any) => {
  console.log(e);
};
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值