Vue3类型判断和ref的两个作用
1.类型判断的四种方法
isRef: 检查一个值是否为一个ref对象
isReactive:检查一个对象是否是由 reactive 创建的响应式代理
isReadonly: 检查一个对象是否是由 readonly 创建的只读代理
isProxy: 检查个对象是否是由 reactive 或者 readonly 方法创建的代理
<template>
<div>
<div>
<div>age:{{age}}</div>
<button @click="func1">按钮</button>
</div>
</div>
</template>
<script>
import {ref,isRef,reactive,
isReactive,readonly,
isReadonly, isProxy
} from 'vue'
export default {
name: 'App',
setup(){
let age=ref(10);
function func1(){
// isRef: 检查一个值是否为一个ref对象
console.log(isRef(age));//true
// isReactive:检查一个对象是否是由 reactive 创建的响应式代理
console.log(isReactive(reactive({age:10,name:'张三'})));//true
// 检查一个对象是否是由 readonly 创建的只读代理
console.log(isReadonly(readonly({})));//true
// 检查个对象是否是由 reactive 或者 readonly 方法创建的代理
console.log(isProxy(reactive({})));//true
console.log(isProxy(readonly({})));//true
}
return {age,func1}
},
}
</script>
2 ref监听数据的变化
使用ref函数,
去使用监听某一个变量的变化,
并且把它渲染到视图上.视图发生变化
<template>
<div>
<div>
<div>objState:{{objState}}</div>
<button @click="func1">按钮</button>
</div>
</div>
</template>
<script>
import {ref} from 'vue'
export default {
name: 'App',
setup(){
let objState=ref({
name:'张三',
age:10
});
function func1(){
objState.value.name='变成李四';
objState.value.age=14
console.log(objState)
}
return {objState,func1}
},
}
</script>
3. ref获取页面中的元素
<template>
<div>
<h2>input框自动聚焦</h2>
<input ref="htmlinput" type="text" />
</div>
</template>
<script>
import { ref,onMounted } from "vue";
export default {
name: "App",
setup() {
let htmlinput=ref();
//页面渲染完成
onMounted(() => {
<!-- if(htmlinput.value){
// 获取input元素
console.log( htmlinput.value )
// 让input自动去聚焦
htmlinput.value.focus();
} -->
htmlinput.value&& htmlinput.value.focus();
})
return {htmlinput}
},
};
</script>
Vue3类型判断和ref的两个作用的更多相关文章
- 认真总结Vue3中ref与reactive区别和isRef与isReactive 类型判断
1.什么是ref? 1.ref和reactive-样 也是用来实现响应式数据的方法 由于reactive必须传递一个对象, 所以导致在企业开发中如果我们只想让某个变量实现响应式的时候会非常麻烦 所以V ...
- C#与Java对比学习:类型判断、类与接口继承、代码规范与编码习惯、常量定义
类型判断符号: C#:object a; if(a is int) { } 用 is 符号判断 Java:object a; if(a instanceof Integer) { } 用 inst ...
- 17.C#类型判断和重载决策(九章9.4)
今天来结束第九章,聊下我们经常忽略,但是编译器会帮我们完成的"类型判断和重载决策",理解编译器如何帮我们完成,相信在写代码时会更明确,避免一些编译出错,排查的问题,让我们开发更给力 ...
- [改善Java代码]在equals中使用getClass进行类型判断
建议47: 在equals中使用getClass进行类型判断 本节我们继续讨论覆写equals的问题.这次我们编写一个员工Employee类继承Person类,这很正常,员工也是人嘛,而且在JEE中J ...
- JavaScript 类型判断 —— typeof 以及 instanceof 中的陷阱
JavaScript中基本类型包含Undefined.Null.Boolean.Number.String以及Object引用类型.基本类型可以通过typeof来进行检测,对象类型可以通过instan ...
- YUI的类型判断函数
1.首先定义一个关于类型的对象,及相关变量 类型判断对象 ar L = Y.Lang || (Y.Lang = {}), STRING_PROTO = String.prototype, TOSTRI ...
- 类型和原生函数及类型转换(二:终结js类型判断)
typeof instanceof isArray() Object.prototype.toString.call() DOM对象与DOM集合对象的类型判断 一.typeof typeof是一个一元 ...
- JavaScript类型判断详解(Object.prototype.toString.call()方法进行数据类型的可靠判断)
前言 在编写一些类库中,我们经常需要判断一些未知的用户的输入和配置,故而需要进行一系列的类型判断.故而总结下JS是如何进行类型判断的 typeof typeof操作符返回一个字符串,表示未经计算的操作 ...
- JS 相等判断 / 类型判断
相等判断 JavaScript提供三种不同的值比较操作: 严格相等 ("triple equals" 或 "identity"),使用 === , 宽松相等 ( ...
- python3.4学习笔记(二) 类型判断,异常处理,终止程序
python3.4学习笔记(二) 类型判断,异常处理,终止程序,实例代码: #idle中按F5可以运行代码 #引入外部模块 import xxx #random模块,randint(开始数,结束数) ...
随机推荐
- TreeMap - 红黑树
TreeMap是Map家族中的一员,也是用来存放key-value键值对的.平时在工作中使用的可能并不多,它最大的特点是遍历时是有顺序的,根据key的排序规则来 TreeMap是一个双列集合,是Map ...
- 聊聊损失函数1. 噪声鲁棒损失函数简析 & 代码实现
今天来聊聊非常规的损失函数.在常用的分类交叉熵,以及回归均方误差之外,针对训练样本可能存在的数据长尾,标签噪声,数据不均衡等问题,我们来聊聊适用不同场景有针对性的损失函数.第一章我们介绍,当标注标签存 ...
- golang chan传递数据的性能开销
这篇文章并不讨论chan因为加锁解锁以及为了维持内存模型定义的行为而付出的运行时开销. 这篇文章要探讨的是chan在接收和发送数据时因为"复制"而产生的开销. 在做性能测试前先复习 ...
- 【ToolChains】CLion(VS2019) + CMake + Vcpkg 的使用
参考博客: https://blog.51cto.com/u_15075510/4201238 http://t.csdn.cn/pADDU https://zhuanlan.zhihu.com/p/ ...
- 例题 5-7 丑数(Ugly Numbers,UVa 136)
题意: 丑数是一些因子只有2,3,5的数.数列1,2,3,4,5,6,8,9,10,12,15--写出了从小到大的前11个丑数,1属于丑数.现在请你编写程序,找出第1500个丑数是什么. 思路: 如果 ...
- springboot启动类源码探索一波
举个例子: 这是一个原始的Spring IOC容器启动方法,我们需要AnnotationConfigApplicationContext这个类有如下几个步骤 1. 创建构造方法,根据我们所传入的Ap ...
- andriod sdk安装与使用
一.进入以下网站下载 https://www.androiddevtools.cn/ 选择sdk工具-sdktools,这个工具比较好,可以通过SDK Manager下载到各种想要的包 有zip与ex ...
- channel 是怎么走上死锁这条路的
本篇文章接着 hello world 的并发实现一文介绍 Go 的 channel 类型,同时进一步介绍 channel 的几种死锁情况,这些都是代码中很容易遇到的,要重点摘出来讲,防止一不留神程序就 ...
- spring boot 集成配置阿里 Druid监控配置
本文为博主原创,转载请注明出处: github 地址如下:https://github.com/alibaba/druid/wiki 其相关问题也可参考:https://github.com/alib ...
- Java21 + SpringBoot3整合Redis,使用Lettuce连接池,推荐连接池参数配置,封装Redis操作
目录 前言 相关技术简介 Redis 实现步骤 引入maven依赖 修改配置文件 定义Redis配置类 定义Redis服务类,封装Redis常用操作 使用Redis服务类 总结 前言 近日心血来潮想做 ...