Vue3 defineEmit触发事件使用总结

$emit官方说明:https://cn.vuejs.org/api/component-instance.html#emit

Children.vue

<script setup lang="ts">
const emits = defineEmits(['refreshList'])

const handleCheck = async (value: number) => {
  await axios.post('/api/user/check', {checked: value})
  emits('refreshList', false) // 语法:emit(event: string, ...args: any[]): void
}
</script>

Parent.vue

<template>
  <Children @refreshList="getData">
</template>

<script setup lang="ts">
import { ref } from 'vue'

const loading = ref<boolean>(false)

const getData = async (showLoading: boolean = true) => {
  if(showLoading) {
    loading.value = true
  }
  const data = await axios.get('/api/user/list')
  if(showLoading) {
    loading.value = false
  }
}
</script>
PS:写作不易,如要转裁,请标明转载出处。
%{ comment.page.total }条评论

猜你想看

微信小程序:前端开发宝典

最近文章
工具操作
  • 内容截图
  • 全屏
登录
注册
回顶部