Vue3学习日记 Day1

一、简介

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.hqwc.cn/news/549022.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

局部路径规划算法 - 人工势场法

人工势场法 参考&#xff1a; &#xff08;1&#xff09;人工势场法 &#xff08;2&#xff09;人工势场法路径规划算法&#xff08;APF&#xff09; 1 算法概述 1.1 算法简介 1986 年 Khatib首先提出人工势场法&#xff0c;并将其应用在机器人避障领域&#xff0c;而现代汽…

数据库SQLServer——插入数据

1.插入数据语法 INSERT INTO table_name(column_list) VALUES (value_list); --简写 INSERT INTO table_name VALUES (value_list);INSERT table_name VALUES (value_list); 2.实例 2.1基本形式&#xff08;不安全&#xff09; insert into 学生表01 values(李明,男,1.70) …

如何解决网络中IP地址发生冲突故障?

0、前言 本专栏为个人备考软考嵌入式系统设计师的复习笔记&#xff0c;未经本人许可&#xff0c;请勿转载&#xff0c;如发现本笔记内容的错误还望各位不吝赐教&#xff08;笔记内容可能有误怕产生错误引导&#xff09;。 1、个人IP地址冲突解决方案 首先winR&#xff0c;调出…

Feign

Feign 1 Feign介绍2 Feign远程调用2.1 Feign替代RestTemplate2.2 自定义配置2.3 Feign使用优化2.4 最佳实践 总结 1 Feign介绍 Feign是一个声明式的Web服务客户端&#xff0c;它使得编写Web服务客户端变得更加简单。它是Spring Cloud中的一个模块&#xff0c;用于简化对REST服…

【Leetcode-19.删除链表的第N个节点】

题目详情&#xff1a; 给你一个链表&#xff0c;删除链表的倒数第 n 个结点&#xff0c;并且返回链表的头结点。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5], n 2 输出&#xff1a;[1,2,3,5]示例 2&#xff1a; 输入&#xff1a;head [1], n 1 输出&#xff1…

中国巨型地下中微子实验室准备探究宇宙奥秘

JUNO设施将于今年上线&#xff0c;将有助于确定哪种类型的中微子质量最高 - 这是物理学中最大的谜团之一。 中国江门地下中微子天文台&#xff08;JUNO&#xff09;的建设工作。朱诺号希望在2024年底之前探测到中微子。图片来源&#xff1a;Qiu Xinsheng/VCG via Getty 开平区…

SpringBoot ApplicationListener实现发布订阅模式

文章目录 前言一、Spring对JDK的扩展二、快速实现发布订阅模式 前言 发布订阅模式(Publish-Subscribe Pattern)通常又称观察者模式&#xff0c;它被广泛应用于事件驱动架构中。即一个事件的发布&#xff0c;该行为会通过同步或者异步的方式告知给订阅该事件的订阅者。JDK中提供…

SQ—inner join、left join、right join区别

关联表查询常用关键字join 假设现有两张表&#xff1a;subject和score left join 基表&#xff1a;左表 表1左连接表2&#xff0c;以左为主&#xff0c;表示以表1为主&#xff0c;关联上表2的数据&#xff0c;查出来的结果显示左边的所有数据&#xff0c;然后右边显示的是和…

2024全新红娘交友系统定制版源码 | 相亲交友小程序源码 全开源可二开

内容目录 一、详细介绍二、效果展示1.部分代码2.效果图展示 三、学习资料下载 一、详细介绍 全新红娘交友系统定制版源码 | 相亲交友小程序源码 全开源可二开 定制版红娘交友平台小程序源码&#xff0c;很牛逼的东西&#xff0c;虽然是小程序&#xff0c;但是有700多M大&…

10大漏洞评估和渗透测试工具【附安装包】

1、Netsparker Security Scanner 专为企业设计的强大的漏洞扫描和管理工具&#xff0c;它可以检测和利用 SQL 注入和 XSS 等漏洞。 https://www.netsparker.com/product/ 2、Acunetix Scanner 针对中小型企业的 Web 应用程序漏洞扫描程序&#xff0c;但也可以扩展到更大的组…

zabbix企业微信接入结合海螺问问编写的shell脚本

前言 博客懒得写详细了&#xff0c;视频剪的累死了&#xff0c;看视频就好了 白帽小丑的个人空间-白帽小丑个人主页-哔哩哔哩视频 shell脚本 #!/bin/bash #set -x CorpID"" #我的企业下面的CorpID Secret"" #创建的应用那…

旅行社旅游线路预定管理系统asp.net

旅行社旅游线路预定管理系统 首页 国内游 境外游 旅游景点 新闻资讯 酒店信息―留言板 后台管理 后台管理导航菜单系统管理修改密码留言管理注册会员管理基础数据设置国别设置有份设地区设置 旅行社管理友情链接管理添加友情链接友情链接管理新闻资讯管理添加新闻资讯新闻资讯管…