当前位置: 首页 > news >正文

怎样让百度快速收录网站广州最新疫情情况

怎样让百度快速收录网站,广州最新疫情情况,做的比较好的电商网站,wordpress sendmail在 Vue 3 和 TypeScript 中,父组件触发子组件事件方法主要有两种方式:使用模板引用(ref) 或 通过自定义事件(emit)。下面是两种方法的详细实现: 方法 1:使用模板引用(Ref…

在 Vue 3 和 TypeScript 中,父组件触发子组件事件方法主要有两种方式:使用模板引用(ref) 或 通过自定义事件(emit)。下面是两种方法的详细实现:


方法 1:使用模板引用(Ref)直接调用子组件方法(推荐)

子组件 ChildComponent.vue

vue

复制

下载

<template><div><p>子组件被触发次数: {{ count }}</p></div>
</template><script setup lang="ts">
import { ref } from 'vue';const count = ref(0);// 暴露给父组件的方法
const triggerChildMethod = () => {count.value++;console.log('子组件方法被触发');
};// 使用 defineExpose 暴露方法
defineExpose({triggerChildMethod
});
</script>
父组件 ParentComponent.vue

vue

复制

下载

<template><div><button @click="handleClick">父组件按钮</button><ChildComponent ref="childRef" /></div>
</template><script setup lang="ts">
import { ref } from 'vue';
import ChildComponent from './ChildComponent.vue';// 定义子组件的 Ref 类型
const childRef = ref<InstanceType<typeof ChildComponent> | null>(null);const handleClick = () => {if (childRef.value) {childRef.value.triggerChildMethod(); // 直接调用子组件方法}
};
</script>

方法 2:通过自定义事件(Emit)

子组件 ChildComponent.vue

vue

复制

下载

<template><div><p>子组件被触发次数: {{ count }}</p></div>
</template><script setup lang="ts">
import { ref } from 'vue';const count = ref(0);// 定义内部方法(不暴露给父组件)
const internalMethod = () => {count.value++;console.log('子组件方法被触发');
};// 监听父组件传来的事件名(例如 "trigger-child")
defineEmits<{(e: 'trigger-child'): void;
}>();// 暴露方法(可选,如果父组件需要通过 ref 调用)
defineExpose({ internalMethod });
</script>
父组件 ParentComponent.vue

vue

复制

下载

<template><div><button @click="$refs.childRef?.internalMethod()">方式1: Ref 调用</button><button @click="emitEvent">方式2: 事件触发</button><ChildComponent ref="childRef" @trigger-child="childRef?.internalMethod()" /></div>
</template><script setup lang="ts">
import { ref } from 'vue';
import ChildComponent from './ChildComponent.vue';const childRef = ref<InstanceType<typeof ChildComponent> | null>(null);const emitEvent = () => {// 通过事件触发子组件内部逻辑childRef.value?.$emit('trigger-child');
};
</script>

关键点说明:

  1. 使用 defineExpose
    子组件需显式暴露方法,父组件才能通过 ref 直接调用。

  2. TypeScript 类型安全

    ts

    复制

    下载

    const childRef = ref<InstanceType<typeof ChildComponent> | null>(null);

    确保调用子组件方法时有完整的类型提示。

  3. 两种方式选择

    • Ref 直调:适合直接操作子组件

    • 自定义事件:适合解耦场景(子组件自行响应事件)

  4. 注意事项

    • 避免过度使用 ref 破坏组件封装性

    • 事件驱动方式更符合 Vue 的数据流原则


完整工作流程:

  1. 子组件用 defineExpose 暴露方法

  2. 父组件声明 ref 并关联子组件

  3. 父组件按钮点击时通过 childRef.value.methodName() 调用

  4. 子组件方法执行并更新状态

根据你的项目结构选择合适的方式即可实现父子组件通信。

http://www.yidumall.com/news/44730.html

相关文章:

  • 网页pc端吉安seo
  • 网站集群建设通知网络营销案例分析论文
  • 中国核工业华兴建设公司网站windows优化
  • 门户网站建设教程营销软文500字
  • 怎么做时时彩网站代理小说网站排名人气
  • wordpress d8360手机优化大师下载
  • 广告图文制作用哪个软件上海比较好的seo公司
  • 做网站 设计师很推广网页
  • wordpress中文破解主题济宁seo优化公司
  • 杭州有没有专业做网站的公司推广软文营销案例
  • 长沙网站制作公司谷歌浏览器手机版官网下载
  • 网站制作客户寻找关键词优化怎么写
  • 网站建设模板免费下载小程序设计
  • 遵义做网站的公司网站制作的流程是什么
  • 做语文题的网站梅花seo 快速排名软件
  • 门户网站开发流程百度广告怎么投放
  • 网站搭建实训报告网络广告营销典型案例
  • 网站开发服务转包合同范本会计培训班哪个机构比较好
  • 免费的网站空间电工培训
  • 香港做网站一般网站推广要多少钱
  • 做网站工资多少企业做推广有用吗
  • 在百度上做网站找谁cnzz
  • 婚庆网站哪个靠谱百度售后客服电话24小时
  • 广元网站建设seo优化营销制作设计google搜索引擎下载
  • 阿里云网站注册seo商城
  • 西安网站建设有那些公司优化优化
  • 基于asp.net的视频网站开发seo的优点有哪些
  • 有什么网站可以做问卷调查seo整站优化多少钱
  • 免费自建 响应式 网站软文推广模板
  • wordpress seo titleseo优化师培训