12种方式

1. 父组件 ./father.vue

点击查看代码
<template>
<h1>father:</h1>
<h3>子组件传过来的:{{ abc }}</h3>
<input type="text" ref="inp" v-model="msg" />
<h4>=================================</h4>
<son :msg="'父组件传过来的:' + msg" @updatas="updatas"></son>
<h4>=================================</h4> <middle></middle>
</template> <script setup>
import middle from "./middle.vue";
import son from "./son.vue";
import { computed, onMounted, reactive, ref, watch } from "vue"; let msg = ref("0062"); // ref初始化值基本类型,reactive用来初始化对象、数组
//这里 let msg = proxy({value:'0062'})
let inp = ref(null); // 获取ref:inp
console.log(inp.value); // null
// console.log(inp.value.value); // 报错:不能读取为空(null)的属性 onMounted(() => {
console.log(inp.value.value); // 0062
setTimeout(() => {
inp.value.value = 20; // 改变输入框的值为20
msg = inp.value.value; // 直接赋值,失去其响应性。原本的msg是个对象可改为msg.value=inp.value.value;
// 这里是mounted函数内部,当再次输入值的时候,msg会重获其响应性
// msg在vue的template中使用,不需要.value; }, 1000);
}); let abc = ref("默认值");
let d = ref('')
const updatas = (data) => { // 接收子组件传来的值,在子组件利用defineEmits调用该函数
console.log("子组件传过来的值:" + data); // data为子组件传进来的参数值
// console.dir(data);
d.value = data; // 这里的d.value是因为vue3里面ref赋值的变量需要通过.value的形式取值,
// ref里面是调用的reactive。
console.dir('d:' + d.value);
};
// let bcd = ref()
abc = computed(() => {
console.log(d);
return d.value
});
</script>

2. 子组件 ./son.vue

点击查看代码
<template>
<h1>son:</h1>
<h3>{{ msg }}</h3>
<input type="text" ref="inpu" @input="handlerchange" />
</template> <script setup>
import { ref, onMounted, nextTick } from "vue"; defineProps({
msg: {
type: String,
default: "son",
},
}); const em1 = defineEmits(["updatas"]);
let inpu = ref(null); // 获取ref:inpu
// let valu = ref('00'); // 初始化valu的值为‘00’
let time = ref(""); const handlerchange = (event) => {
// event.currentTarget.value直接实时获取input输入框的值
// console.log(event.currentTarget.value);
// console.log(event);
// console.dir(event.currentTarget);
let a = event.currentTarget.value
clearTimeout(time);
time = setTimeout(() => { // setTimeout计时结束会执行里面的代码 // 宏任务
// console.log(inpu.value.value); // 通过ref获取输入的值
// console.log(event);
// console.dir(event.currentTarget); // event.currentTarget是一个实时值,而不是快照。随着事件冒泡阶段的结束,它将被解引用,为null。
em1("updatas", a);
}, 800);
}; </script>

Vue3组件间传值的更多相关文章

  1. Vue 组件间传值

    前言 Vue 作为现在比较火的框架之一,相信您在使用的过程中,也会遇到组件间传值的情况,本文将讲解几种 Vue 组件间传值的几种方法,跟着小编一起来学习一下吧! 实现 注意: 学习本文,需要您对 Vu ...

  2. react组件间传值详解

    一.父子组件间传值     <1>父传子         父组件:

  3. Vue中组件间传值常用的几种方式

    版本说明: vue-cli:3.0 一.父子组件间传值 1.props/$emit -父组件==>>子组件: 子组件中通过定义props接收父组件中通过v-bind绑定的数据 父组件代码 ...

  4. Vue学习(二)-Vue中组件间传值常用的几种方式

    版本说明:vue-cli:3.0 主要分为两类: 1.父子组件间的传值 2.非父子组件间的传值 1.父子组件间传值 父组件向子组件传值 第一种方式: props 父组件嵌套的子组件中,使用v-bind ...

  5. React Native 系列(五) -- 组件间传值

    前言 本系列是基于React Native版本号0.44.3写的.任何一款 App 都有界面之间数据传递的这个步骤的,那么在RN中,组件间是怎么传值的呢?这篇文章将介绍到顺传.逆传已经通过通知传值. ...

  6. Vue组件间传值 v-model

    使用过Vue的同学应该都了解组件之间传值 父组件 --> 子组件 : props 子组件 --> 父组件 : 事件 其实有一种更为简单的方法,是基于上述两种方法,那就是 v-model 我 ...

  7. Angular中不同的组件间传值与通信的方法

    主要分为父子组件和非父子组件部分. 父子组件间参数与通讯方法 使用事件通信(EventEmitter,@Output): 场景:可以在父子组件之间进行通信,一般使用在子组件传递消息给父组件: 步骤: ...

  8. vue——父子组件间传值

    (1)父组件给子组件传值(商品详情页): 根据订单类型,判断显示立即购买/立即拼单: 通过props来传递参数 父组件(商品详情页) 父组件调用子组件,在子组件的标签中,通过:数据名称=”数据”的形式 ...

  9. taro 填坑之路(二)taro 通过事件监听 实现组件间传值

    1.组件传值的方式 2.事件监听原理 3.事件管理器 utils/event.js /** * 事件池(事件管理器) * 通过事件监听传值 */ class Event { constructor() ...

随机推荐

  1. Mysql8.0修改lower_case_table_names参数导致重启失败

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. GreatSQL是MySQL的国产分支版本,使用上与MySQL一致. 事件起因:在测试一个数据迁移工具时,源端oracle ...

  2. dotnet 设计规范 · 数组定义

    ✓ 建议在公开的 API 使用集合而不是数组.集合可以提供更多的信息. X 不建议设置数组类型的字段为只读.虽然用户不能修改字段,但是可以修改字段里面的元素.如果需要一个只读的集合,建议定义为只读集合 ...

  3. django_day01

    内容回顾 django处理浏览器的请求流程: 请求发送到wsgi wsgi封装了请求的相关数据(request) django去匹配路径 根据路径判断要执行哪个函数 执行函数 函数执行具体的业务逻辑 ...

  4. Java开发学习(二十九)----Maven依赖传递、可选依赖、排除依赖解析

    现在的项目一般是拆分成一个个独立的模块,当在其他项目中想要使用独立出来的这些模块,只需要在其pom.xml使用<dependency>标签来进行jar包的引入即可. <depende ...

  5. KingbaseES R3 集群pcp_attach_node 更新show pool_nodes中节点状态

    系统环境: 操作系统: [kingbase@node2 bin]$ cat /etc/centos-release CentOS Linux release 7.2.1511 (Core) 数据库: ...

  6. logstash客户端传送symantec日志到elasticsearch

    一.安装相应版本的logstash wget https://artifacts.elastic.co/downloads/beats/logstash/logstash-7.5.2-x86_64.r ...

  7. 【java8新特性】02:常见的函数式接口

    Jdk8提供的函数式接口都在java.util.function包下,Jdk8的函数式类型的接口都有@FunctionInterface注解所标注,但实际上即使没有该注解标注的有且只有一个抽象方法的接 ...

  8. k8s 中的 Pod 细节了解

    k8s中Pod的理解 基本概念 k8s 为什么使用 Pod 作为最小的管理单元 如何使用 Pod 1.自主式 Pod 2.控制器管理的 Pod 静态 Pod Pod的生命周期 Pod 如何直接暴露服务 ...

  9. 怎样编写正确、高效的 Dockerfile

    基础镜像 FROM 基础镜像 基础镜像的选择非常关键: 如果关注的是镜像的安全和大小,那么一般会选择 Alpine: 如果关注的是应用的运行稳定性,那么可能会选择 Ubuntu.Debian.Cent ...

  10. 使用 Dockerfile 的一些最佳实践