Vue3 中 props 与 emit 用法

在 Vue3 中,propsemit 的用法有所改变,主要的变化在于它们现在都通过 setup 函数来访问和使用。

props:
props 用于父组件向子组件传递数据。在 setup 函数中,props 是一个参数,我们可以通过它访问到父组件传入的所有 prop 值。

javascript 复制代码
<script>
export default {
  props: ['message'],
  setup(props) {
    console.log(props.message) // 输出父组件传入的 message
  }
}
</script>

emit:
emit 用于子组件向父组件发送自定义事件。在 setup 函数中,emit 是第二个参数,我们可以使用它来触发自定义事件并传递数据。

javascript 复制代码
<script>
export default {
  setup(props, { emit }) {
    const onClick = () => {
      emit('click', 'Hello, parent')
    }
    return { onClick }
  }
}
</script>

在这个示例中,当点击事件触发时,子组件会通过 emit 发送一个名为 'click' 的事件,并传递一个 'Hello, parent' 的数据给父组件。父组件可以通过 v-on:click="handler"@click="handler" 来监听这个事件。

以上是 Vue3 中 propsemit 的基本用法,更多的功能和详情,你可以查阅 Vue 官方文档Vue 官方文档 进行学习。

相关推荐
鹏多多17 小时前
Web浏览器后台离线通知方案实现以及兼容指南
前端·javascript·vue.js
yangmu320317 小时前
Vue3 响应式系统深度解析:从 Proxy 到依赖追踪
前端·javascript·vue.js
VaJoy19 小时前
全面革新⚡️ Vue 3.6 项目工程的基础实现
前端·vue.js
vipbic1 天前
中后台越做越乱后,我用插件化把它救回来了
前端·vue.js
kaiking_g1 天前
vue项目中,静态导入 vs 动态导入 详解
前端·javascript·vue.js
不法2 天前
uniapp map地图导航/地图路线
前端·vue.js·uni-app
卓怡学长2 天前
w263基于springboot + vue 健康饮食管理系统
java·数据库·vue.js·spring boot·spring·intellij-idea
无情的西瓜皮2 天前
MCP 协议实战:从零搭建一个 MCP 服务器(Node.js 版)
vue.js·人工智能·typescript·node.js
万亿少女的梦1682 天前
基于Spring Boot、Vue.js和MySQL的超市管理系统设计与实现
java·vue.js·spring boot·mysql·管理系统
李明卫杭州2 天前
Vue2 portal-target 组件与 Vue3 的针对性优化
前端·javascript·vue.js