vue3使用setup语法糖组件基础传值

**(1):defineProps:**传入要使用的props定义自定义属性,传递过来的值具有响应式,和props一样;

**(2):defineEimts:**传入要自定义的事件,emit实例去传入自定义事件的值,和$emit或context.emit一样;

父组件:

javascript 复制代码
<template>
   <initInput :index="8" @changeInit="changeInit"></initInput>
</template>

<script lang="ts" setup>
import initInput from './computed/initInput.vue';
const changeInit = (e: any) => {
  console.log(e);  // 100
}
</script>

子组件:

javascript 复制代码
<template>
    <div>
        <el-button type="primary" @click="change">点击</el-button>
    </div>
</template>
<script lang="ts" setup>
import { onMounted, getCurrentInstance } from 'vue';
import { useRoute, useRouter } from 'vue-router';
// data数据
let { proxy: this_ }: any = getCurrentInstance();
let route = useRoute();
let router = useRouter();
// mounted
// methods方法
let props = defineProps({
    index: {
        type: Number,
        default: 0
    }
});
let emit = defineEmits(["changeInit"]);
const change = () => {
    console.log(props.index);  // 8
    emit("changeInit", 100);
}
</script>
<style scoped  lang='scss'>
</style>
相关推荐
li35742 小时前
将已有 Vue 项目通过 Electron 打包为桌面客户端的完整步骤
前端·vue.js·electron
Icoolkj2 小时前
VuePress 与 VitePress 深度对比:特性、差异与选型指南
前端·javascript·vue.js
excel2 小时前
CNN 分层详解:卷积、池化到全连接的作用与原理
前端
excel3 小时前
CNN 多层设计详解:从边缘到高级特征的逐层学习
前端
^Rocky3 小时前
JavaScript性能优化实战
开发语言·javascript·性能优化
西陵4 小时前
Nx带来极致的前端开发体验——任务编排
前端·javascript·架构
大前端helloworld4 小时前
从初中级如何迈入中高级-其实技术只是“入门卷”
前端·面试
笑鸿的学习笔记4 小时前
JavaScript笔记之JS 和 HTML5 的关系
javascript·笔记·html5
东风西巷6 小时前
Balabolka:免费高效的文字转语音软件
前端·人工智能·学习·语音识别·软件需求