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>
相关推荐
小万编程19 分钟前
基于SpringBoot+Vue毕业设计选题管理系统(高质量源码,提供文档,免费部署到本地)
java·vue.js·spring boot·计算机毕业设计·java毕业设计·web毕业设计
重生之搬砖忍者20 分钟前
uniapp使用canvas生成订单小票图片
前端·javascript·canva可画
万水千山走遍TML25 分钟前
console.log封装
前端·javascript·typescript·node·log·console·打印封装
赵大仁36 分钟前
uni-app 多平台分享实现指南
javascript·微信小程序·uni-app
阿雄不会写代码1 小时前
使用java springboot 使用 Redis 作为消息队列
前端·bootstrap·html
m0_748236581 小时前
【Nginx 】Nginx 部署前端 vue 项目
前端·vue.js·nginx
@C宝1 小时前
【前端面试题】前端中的两个外边距bug以及什么是BFC
前端·bug
Burt2 小时前
@antfu/eslint 支持 globals 全局变量
前端·uni-app·eslint
m0_528723812 小时前
如何在新窗口打开pdf文件,并修改网页标题
前端·javascript·pdf
m0_748248772 小时前
十七:Spring Boot依赖 (2)-- spring-boot-starter-web 依赖详解
前端·spring boot·后端