Vue3学习日记 Day1

news2024/11/16 15:48:27

一、简介

1、简介

    Vue3是新的默认版本,拥有更快的速度,更好的语法

二、使用create-vue搭建Vue3项目

1、创建项目

1、介绍

    create-vue是Vue官方新的脚手架工具,底层切换为了vite,为开发提供极速响应

2、使用

    2.1、确定环境条件

        2.1.1已安装16.0或更高版本的Node.js

        node -v

    2.2、创建一个Vue应用

        npm init vue@latest

2、认识文件

1、vite.comfig.js —— 基于vite的配置

2、main.js —— createApp函数创建应用实例

    //将创建进行了封装,保证了每个实例的独立封闭性

    //如:

    // 路由:createRouter 仓库:createStore

    //注:

    // createApp(App).mount('#app')中

    // mount('#app')指,设置挂载点为id = app的位置

3、app.vue

    //script加上setup,允许在script中直接编写组合式API

    //模板template不再要求唯一根元素

    //组件不再需要单独注册,导入即可使用

4、assets

    //图片、样式文件的目录

5、components

    //组件目录

三、组合式API

1、setup

1、介绍

    setup是组合式API的入口

2、用法

    setup(){

        //语句,执行时机在beforeCreate之前  

        //注:setup中,获取不到this

        //注:在setup中可以提供数据和函数,但若要在template中使用,需要return                 

        //如:

        const message = 'Hello Vue3!'

        const logMessage = () =>{

            console.log(message)        

        }  

        return{

            message,

            logMessage        

        }                   

    },

2、<script setup>语法糖

1、介绍

    当使用了<script setup>后,就不再需要

     export default{

         setup(){

             return{

                 ...             

             }         

         }

    }

    而是可以直接快捷的编写

2、示范:

    <script setup>

      const message = "This is message"

      const logMessage = () =>{

        console.log(message);

      }

    </script>

    

    <template>

      <div class="index">

        {{ message }}

      </div>

      <button @click="logMessage">logMessage</button>

    </template>

3、reactive

1、作用

    接受对象类型数据的参数传入,并返回一个响应式的对象

    

2、使用

    2.1、导入

        import { reactive } from 'vue'

    2.2、执行函数

        const state = reactive(对象类型数据)

    //注:只可以接受对象类型

4、ref —— 建议只用这个

1、作用

    接受简单类型或对象类型的数据,并返回一个响应式的对象

    

2、使用

        import { ref } from 'vue'

    2.2、执行函数

        const state = ref(简单或对象类型数据)

    //本质上是在将简单类型包装为复杂类型后,再借助reactive实现的响应式

    2.3、示例

        let kg = ref({

            count:100,

            like:50        

        })

        

3、注

    3.1、在脚本中访问数据,需要通过.value

    3.2、在template中,不需要通过.value

5、computed

 1、作用

    与vue2基本一致,只是修改了写法

    

2、使用

    2.1、导入

        import { computed } from 'vue'

    2.2、执行函数

        const computedState = computed(() => {

            return 计算后的值        

        })

        

3、扩展使用

    //computed默认只读,可以通过get和set语法创建可写的ref

    //但默认情况应该避免修改计算属性的值

    //如:

      const computedList = computed({

      get: () => count.value + 1,

      set: (val) => {

        count.value = val + 1

      }

    })

6、watch

1、作用

    侦听一个或多个数据的变化,数据变化时执行回调函数

    

2、基本使用

        import { watch } from 'vue'

    2.2、执行函数

        watch(count, (newValue,oldValue) => {

            console.log(`count发生了变化,老值为${oldValue},新值为${newValue}`)        

        })

        

3、侦听多个数据

    watch([count,name],([newCount,newName],[oldCount,newCount]) =>{

        console.log('count或者name变化了',[newCount,newName],[oldCount,oldName])    

    })

    

4、配置项

    4.1、immediate

        //在侦听器创建时立即触发一次回调,响应式数据变化后继续执行回调

    4.2、deep

        //进行深度监视,watch默认进行的是 浅层监视,无法监测到复杂类型内部数据的变化

    4.3、精确监听

        //在不开启deep的前提下,对精确的数据进行监听,只有数据变化时才执行回调

        4.3.1、语法

            () => 数据,

            (newValue,oldValue) => 执行事件             

        

三、生命周期API

809709a4416b45e5918acd24558f15f4.png

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

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

相关文章

关于 闰年 的小知识,为什么这样判断闰年

闰年的规定&#xff1a; 知道了由来&#xff0c;我们就可以写程序来判断&#xff1a; #include <stdio.h> int main() {int year, leap;scanf("%d",&year);if((year%4 0 && year%100 ! 0) || year%400 0)leap 1;else leap 0;if(leap) printf(…

Python大数据实践:selenium爬取京东评论数据

准备工作 selenium安装 Selenium是广泛使用的模拟浏览器运行的库&#xff0c;用于Web应用程序测试。 Selenium测试直接运行在浏览器中&#xff0c;就像真正的用户在操作一样&#xff0c;并且支持大多数现代 Web 浏览器。 #终端pip安装 pip install selenium #清华镜像安装 p…

创新应用2:nnmf+DBO+K-Medoids聚类,蜣螂优化算法DBO优化K-Medoids,适合学习和发paper。

创新应用2&#xff1a;nnmfDBOK-Medoids聚类&#xff0c;蜣螂优化算法DBO优化K-Medoids&#xff0c;适合学习和发paper。 一、蜣螂优化算法 摘要&#xff1a;受蜣螂滚球、跳舞、觅食、偷窃和繁殖等行为的启发&#xff0c;提出了一种新的基于种群的优化算法(Dung Beetle Optim…

断言assert是什么?

assert是什么&#xff1f; assert断言&#xff0c;是一个被定义在<assert.h>头文件中的一个宏&#xff0c;而不是一个函数。 可以用来检查数据的合法性&#xff0c;但是频繁的调用极大影响了程序的性能&#xff0c;增加了额外的开销。可以通过#define NDEBUG来禁用asse…

计算机考研|408还是自命题?看这一篇就够了

计算机考研自命题都担心考不上&#xff0c;408估计更能让你头秃 不要光看着408的分数线低&#xff0c;自命题分数线高&#xff0c;408想拿到高分是很困难的...&#x1f630; 某双飞一本 身边大部分人都去考数据结构是因为考试内容相比于408来说少了很多&#xff0c;时间更好分配…

MySQL基础-----多表查询之子查询

目录 前言 子查询概述 1.概念 2.分类 一、标量子查询 二、列子查询 三、行子查询 四、表子查询 前言 上一期我们讲了内外连接查询以及自连接查询&#xff0c;那么本期我们就学习多表查询的子查询。本期会详细讲解什么是子查询&#xff0c;以及子查询的相关功能&#xf…

Java项目:63 ssm网上花店设计+vue

作者主页&#xff1a;舒克日记 简介&#xff1a;Java领域优质创作者、Java项目、学习资料、技术互助 文中获取源码 项目介绍 系统具备友好性且功能完善。管理员登录进入后台之后&#xff0c;主要完成花材选择管理&#xff0c;用户管理&#xff0c;鲜花管理&#xff0c;鲜花出入…

18 优先级队列

priority_queue介绍 1.优先级队列是一种容器适配器&#xff0c;根据弱排序标准&#xff0c;它的第一个元素总是最大的 2.此上下文类似于堆&#xff0c;堆中可以随时插入元素&#xff0c;检索最大堆元素 3.优先队列实现为容器适配器&#xff0c;容器适配器即将特定容器类封装作…

【源码阅读】evmⅠ

代码位置如下&#xff1a; 参考link 以太坊中有一个很重要的用途是智能合约&#xff0c;而其中evm模块是实现了执行智能合约的虚拟机。evm可以逐条解析执行智能合约的指令。 evm中的核心对象是EVM&#xff0c;代表一个以太坊虚拟机。其内部主要依赖&#xff1a;解释器Interore…

水下蓝牙耳机哪个牌子好?推荐四款高人气力作游泳耳机

在这个充满活力的时代&#xff0c;人们对于生活的追求早已不仅仅局限于日常的琐碎&#xff0c;更多的是对健康、对自我挑战的向往。运动&#xff0c;成为了现代人生活中不可或缺的一部分。而游泳&#xff0c;作为一项既能锻炼全身&#xff0c;又能享受水中美妙的运动&#xff0…

行尾检测论文汇总

文章目录 2023GNSS-Free End-of-Row Detection and Headland Maneuvering for Orchard Navigation Using a Depth Camera 2023 GNSS-Free End-of-Row Detection and Headland Maneuvering for Orchard Navigation Using a Depth Camera 摘要&#xff1a; 果园中基于GPS的导航…

苍穹外卖-day08:导入地址簿功能代码(单表crud)、用户下单(业务逻辑)、订单支付(业务逻辑,cpolar软件)

苍穹外卖-day08 课程内容 导入地址簿功能代码用户下单订单支付 功能实现&#xff1a;用户下单、订单支付 用户下单效果图&#xff1a; 订单支付效果图&#xff1a; 1. 导入地址簿功能代码&#xff08;单表crud&#xff09; 1.1 需求分析和设计 1.1.1 产品原型&#xff08…

Linux——进程通信(二) 匿名管道的应用:进程池

前言 之前我们学习了进程通过匿名管道进行通信&#xff0c;实现了两个进程的数据传输。 如果我们管理的是很多个进程&#xff0c;通过管道发送指令&#xff0c;因为如果管道中没有数据&#xff0c;读端必须等待&#xff0c;也就是被管理的进程们都在等待我发送的指令&#xf…

DevExpress WinForms crack,DevExpress WinForms组件套件和库

DevExpress WinForms crack,DevExpress WinForms组件套件和库 Reporting & Analytics - Reports, Pivot Tables, PDF Viewer. The DevExpress WinForms Subscription includes royalty-free user interface components for next-gen decision support systems. Whether you…

SegFormer 项目排坑记录

SegFormer 项目排坑记录 任务记录创建conda环境 准备数据库和预训练参数程序配置修改测试可视化训练 任务 需要复现SegFormer分割项目&#xff0c;似乎还有点麻烦&#xff0c;参考这几个进行复现&#xff0c;记录下过程&#xff1a; SegFormer mmsegmentation CSDN博客 知乎博…

保姆级教学!微信小程序设计全攻略!

微信小程序开启了互联网软件的新使用模式。在各种微信小程序争相抢占流量的同时&#xff0c;如何设计微信小程序&#xff1f;让用户感到舒适是设计师在产品设计初期应该考虑的问题。那么如何做好微信小程序的设计呢&#xff1f;即时设计总结了以下设计指南&#xff0c;希望对准…

车企都卷入鸿蒙开发的行了!难怪岗位需求量涨这么快!!!

近日华为鸿蒙 OS 官微宣布&#xff0c;首批汽车行业伙伴广汽传祺、岚图汽车、零跑汽车、凯翼汽车官宣加入鸿蒙生态。 这四家车企加入&#xff0c;会不会影响着其他车企想哪些手机APP厂商那种陆续的跟上呢&#xff1f; 其实在此前国内新能源扛把子比亚迪早已与华为达成了合作&a…

纳米阱可提高未来光学设备的光强度

一种配置光捕获器件的方法有望通过放大光和提高发光纳米材料的发射效率来获得更好的光学纳米器件&#xff0c;而无需复杂的技术升级。 强光束对于从医学到电子产品的无数应用至关重要&#xff0c;但使用日常光源生产它们具有挑战性。然而&#xff0c;它们可以由激光产生。激光…

校园暴力谁之过?如何正确引导孩子行为?

近日&#xff0c;关于河北邯郸校园霸凌事件持续发酵&#xff0c;很多媒体包括央视都是密切关注此事的发展动向&#xff0c;很多媒体人也在持续报道后续事态。那么对于14岁的的少年来说&#xff0c;花样年华的年纪&#xff0c;究竟为什么会犯下如此大的罪行&#xff1f;孩子为什…

电脑msvcp140_1.dll丢失的解决方法,总结5种可靠的方法

在日常使用电脑的过程中&#xff0c;我们可能会遇到一些错误提示&#xff0c;其中之一就是“msvcp1401.dll丢失”。这个DLL文件是Microsoft Visual C Redistributable Package的一部分&#xff0c;对于许多基于Windows的应用程序来说至关重要。这个错误通常会导致某些应用程序无…