Vue3常用语法记录,基础使用看这篇就够了

news2024/11/25 0:53:05

1、ref

const test = ref<number>(8)

2、reactive

const testObj = reactive({
    test001: '',
    test002: ''
})

3、props & defineEmits

defineProps({
    icon: String,
});
const emit = defineEmits(['change', 'update:value', 'format-error']);
emit('update:value', v);

4、watch

// 当count改变时触发
watch(count, (val, oldVal) => {
    console.log(val, oldVal);
});


5、watchEffect

setup() {
    const count = ref(0);
    watchEffect(() => {
      console.log(count.value); // 初始化时会执行一次
    });
    setTimeout(() => {
      count.value += 1; // 值变化时又执行了一次
    }, 1000);
}

区别:
    watchEffect会自动的收集依赖,而watch是明确的指定监听某个变量
    watch可以获取到新值和旧值,watchEffect则只能取到最新的
    watchEffect会在初始化的时候执行一次,类似computed

6、computed

const sayHello = computed(() => {
    console.log('computed', count.value);
    return `我是${name.value},${count.value}岁`;
});

computed和watchEffect相同的地方是会自动收集依赖,在值更新时会触发回调,会初始化调用一次。
但是在触发初始化的时机是不一样的,如果computed的值没有被使用,是不会触发回调的,只有在该值被使用的时候才会触发回调,但watchEffect是在setup的时候就会初始化。

7、toRef & toRefs

<template>
    <h2>姓名:{{name}}</h2>
    <h2>年龄:{{age}}</h2>
    <h2>地址:{{addr.province}}-{{addr.city}}</h2>
    <button @click="name='zhangsan'">修改名字</button>
</template>
<script lang='ts'>
    import { reactive, toRefs } from 'vue'
    export default {
        setup() {
            const user = reactive<any>({
                name: '张三',
                age: 19,
                addr: {
                    province: '河南',
                    city: '郑州'
                }
            })
            return {
                name: toRef(obj,"name"),
                ...toRefs(user)
            }
        }
    }
</script>

将响应式对象中的所有属性转换为单独的响应式数据,对象成为普通对象toRefs是toRef的批量操作

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1004229.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

DataGrip实时模板的配置2.0

印象里一直记着配置过代码实时模板&#xff0c;但是忘了换了工作电脑&#xff0c;之前配置的模板在我另一台电脑上 需要重新配置一下&#xff0c;我是笨蛋orz 配置方法和之前的一致 DataGrip实时模板的配置_王小小鸭的博客-CSDN博客https://blog.csdn.net/clover_oreo/articl…

9月11日上课内容 第二章 GFS 分布式文件系统

本章结构 前言 存储 块存储 硬盘 文件存储 nfs lvm raid ext4 ext3 centos6 xfs centos7 对象存储 GFS Ceph fastdfs 云端 OSS 阿里云存储 url链接 S3 亚马逊 …

证件照换衣服怎么换?学会这两招不用重拍证件照

当我们申请各种证件时&#xff0c;证件照往往是不可或缺的一步。这张照片会被用于各种场合&#xff0c;比如办理银行卡、信用卡、驾驶证、护照、签证等等&#xff0c;因此&#xff0c;它的重要性不言而喻。而证件照上的衣服则是影响印象的一个重要因素。所以&#xff0c;为了让…

2022年全国研究生数学建模竞赛华为杯A题移动场景超分辨定位问题求解全过程文档及程序

2022年全国研究生数学建模竞赛华为杯 A题 移动场景超分辨定位问题 原题再现&#xff1a; 在日常家庭生活中&#xff0c;人们可能需要花费大量时间去寻找随意摆放在家中某些角落里的小物品。但如果给某些重要物品贴上电路标签&#xff0c;再利用诸如扫地机器人的全屋覆盖能力&…

手动实现一个bind函数!

原文地址&#xff1a;手动实现一个bind函数&#xff01; - 知乎 1.bind函数用法 bind()方法用于创建一个新的函数&#xff0c;这个新函数接收的第一个参数代表的就是this&#xff0c;利用bind()函数我就就可以任意改变函数内部的this指向了。 官网的解释&#xff1a; bind()…

缩小检索范围、精准检索文献的方法

搜索文献也需要找到正确的方法&#xff0c;因为不正确的搜索方法直接影响搜索结果。要么发现的文献与我们需要的无关&#xff0c;要么检索到的文献很少&#xff0c;这不仅浪费时间&#xff0c;而且浪费精力。本文整理了准确检索文献、缩小文献检索范围的详细方法&#xff0c;希…

三步高效搭建在线帮助中心,这几个技巧与工具必须掌握

搭建一个高效的在线帮助中心是提供优质客户支持的重要组成部分。下面将介绍三个步骤&#xff0c;以及必须掌握的技巧和工具&#xff0c;帮助你快速搭建一个高效的在线帮助中心。 第一步&#xff1a;规划和准备 在搭建在线帮助中心之前&#xff0c;首先需要进行一些规划和准备…

python自动生成小学四则运算题目

前言 大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 话不多说&#xff0c;直接开搞&#xff0c;如果有什么疑惑/资料需要的可以点击文章末尾名片领取源码 题目一 1.题目要求&#xff1a; 设计一个程序&#xff0c;帮助小学生练习10以内的加法 详情: 随机生成加法题目; 学生…

《向量数据库指南》——向量数据库会是 AI 的“iPhone 时刻”吗?

最近一年,以 ChatGPT、LLaMA 为代表的大语言模型的兴起,将向量数据库的发展推向了新的高度。 向量数据库是一种在机器学习和人工智能领域日益流行的新型数据库,它能够帮助支持基于神经网络而不是关键字的新型搜索引擎。向量数据库不同于传统的关系型数据库,例如 PostgreSQ…

Vue3 Element-Plus 主题切换方案

1. .html 文件中&#xff0c;设置 <html> 标签的 “data-theme” 属性 2. 单独创建主题的样式文件 .css/.scss &#xff0c;并导入 3. 样式文件中创建不同主题对象 4. 定义不同主题中的样式变量 注意&#xff1a;左右两个主题的变量名一样&#xff0c;值不同 5. 页面样式…

【Hive SQL】统计同名路径下目录数量(基于reverse、split和substr函数)

首先&#xff0c;Hive事务表所产生的的路径信息如下&#xff1a; PS&#xff1a;其中路径信息格式为 /user/hive/warehouse/${database_name}.db/${table_name}/*/user/hive/warehouse/test.db/tran_ts/delete_delta_0000002_0000002_0000 /user/hive/warehouse/test.db/tran_…

VUE响应式

响应式 :::tip 提示 我们了解过响应式可以同步更新数据和视图&#xff0c;但是其工作原理我们最好也要了解一下。这样当你使用时遇到一些常见的错误&#xff0c;也能够快速定位是什么问题导致的。 了解响应式原理之前&#xff0c;你必须要先去了解 ES5 的 Object.defineProper…

项目管理的工作分解结构 (WBS):如何创建及使用

工作分解结构 (WBS) 是一种可视化的项目分解。通过将项目分解为更小的组件&#xff0c;WBS 可以将范围、成本和可交付成果集成到一个工具中。虽然大多数 WBS 是基于可交付成果的&#xff0c;但它们也可以是基于阶段的。下面来详细了解 WBS 可以为项目管理做些什么。 项目管理中…

Linux 磁盘管理,分区,文件系统

目录 磁盘基本概念 磁盘在Linux中的表示 分区的概念&#xff0c;分区是软件概念 MBR GPT 使用fdisk进行磁盘管理 文件系统 mke2fs mkfs mke2fs mkfs dumpe2fs 日志 e2label fsck (file system check) 挂载、使用文件系统&#xff0c;mount,unmount 自动挂载…

大数据平台测试

简介&#xff1a; 一.大数据平台测试简述 大数据平台测试包括2部分&#xff1a;基础能力测试和性能测试 Ⅰ).基础能力测试 大数据平台的基本功能和数据的导入导出对SQL任务、NoSQL任务、机器学习、批处理任务的支持 大数据平台是否能够通过界面的形式方便用户进行非运行维护&am…

PCIE2.0/PCIE3.0/PCIE4.0/PCIE5.0接口的带宽、速率计算,nvlink互联

PCIE2.0/PCIE3.0/PCIE4.0/PCIE5.0接口的带宽、速率计算 https://blog.csdn.net/weixin_42229404/article/details/84069859 PCI-Express(peripheral component interconnect express)是一种高速串行计算机扩展总线标准&#xff0c;它原来的名称为“3GIO”&#xff0c;是由英特…

虚拟机突然无法访问外部网络的现象集合

现场还原 虚拟机突然无法访问外部网络 ping 8.8.8.8的时候显示网络不可达 ping 8.8.8.8ping www.baidu.com&#xff08;报&#xff1a;未知的名称或服务或请求超时&#xff09; ping www.baidu.comyum操作 也提示错误&#xff1a;为仓库 ‘appstream’ 下载元数据失败 : C…

device or resource busy

最近要删除ubuntu下面的某个文件的时候&#xff0c;突然报错: "device or resource busy", 于是通过 如下命令: lsof | grep /projects/m/CMLR_processed_codeformer_HD/20110330/02313/.nfs0000000001dedb1b00000003 发现是 5953号进程占用了&#xff0c;于是kill…

win11鼠标指针怎么设置

win11有很多自定义的功能&#xff0c;这个功能可以让我们根据自己的喜好进行系统的自定义设置&#xff0c;很多小伙伴在将电脑更新成win11之后不知道该怎么设置鼠标指针&#xff0c;这里小编就给大家带来win11鼠标指针的设置方法&#xff0c;还不太清楚的小伙伴快来跟小编一起了…

SpringMvc第五战-【SpringMvcJSR303和拦截器】

前言&#xff1a; 小编阐述了springmvc 中的文件下载&#xff0c;以及jrebel的使用和文件下载以及多文件下载! 在本次小编将会介绍JSR303的概念&#xff0c;应用场景和在具体实例的使用&#xff1b;和拦截器的应用 一.JSR303的介绍 1.什么是JSR303&#xff1f; JSR是Java S…