vue3笔记-脚手架篇

news2024/11/25 20:29:49

第一章 基础篇

第二章 脚手架篇

vue2与vue3的一些区别

  1. 响应式系统:
  • Vue 2 使用 Object.defineProperty 进行响应式数据的劫持和监听,它对数据监听是一项项的进行监听,因此,当新增属性发生变化时,它无法监测到,并且响应性能不是很好。
  • Vue 3 使用 Proxy 来实现响应式系统,它用一个中间代理来管理所有的数据响应,这使得它可以监听新增和删除的属性,并且提供了更好的性能和扩展性。
  1. 组件实例:
  • Vue 2 的组件实例使用 选项式 API,将组件的逻辑拆分为不同的生命周期钩子函数,随着组件复杂度的增加,代码结构变得臃肿。

    <template>
      <div>
        
      </div>
    </template>
    
    <script>
    export default {
      data() {
        return {
          
        };
      },
      methods: {
    
      },
    };
    </script>
    
  • Vue 3 引入了 组合式 API,通过 setup 函数来组织逻辑,可以根据功能进行逻辑的组合,提高了代码的可维护性和重用性。

    <template>
        <div>
    
        </div>
    </template>
    
    <script setup>
    
    </script>
    
    <style lang="scss" scoped>
    
    </style>
    
  1. 编译器:
  • Vue 2 使用基于字符串的模板编译方式,模板中的指令和插值表达式在编译阶段被转换成对应的 JavaScript 代码。

  • Vue 3 引入了编译器的静态标记,利用更先进的编译技术(如基于 AST 的编译),提供了更好的性能和错误检查。

    基于 AST(抽象语法树)的编译是一种常见的编译技术,它将源代码转换为一个表示代码结构的树状数据结构。在编译过程中,AST 用于分析、转换和生成代码。

  1. 性能优化:
  • Vue 3 在编译和运行时都进行了一系列的性能优化,比如更细粒度的更新跟踪、更高效的虚拟 DOM 算法等,提供了更高的性能和更小的包体积。
  1. TypeScript 支持:
  • Vue 3 对 TypeScript 的支持更加友好,它在编译器和 API 设计上进行了改进,提供了更好的类型推导和类型检查。

Vue CLI

Vue CLI(Command Line Interface)是一个用于快速开发 Vue.js 项目的官方脚手架工具。它提供了一套完整的项目脚手架,包括构建、开发服务器、代码规范等,帮助你快速搭建和管理 Vue.js 项目。

下载安装Vue CLI

npm install -g @vue/cli

安装完成以后,使用vue命令创建你的vue项目

vue create ny-project

运行完命令以后需要选择项目的一些配置依赖,选择完毕以后,回车Vue CLI就会帮我们创建一个vue项目,cd到项目文件下,运行 npm run server启动项目。

如果是第一次使用vueCLI创建项目,可以先去B站找几个项目视频看一下,会教你怎么选择依赖,对项目文件进行解读。

Vite

Vite 是一个现代化的前端构建工具,用于快速开发现代化的 Web 应用程序。它与传统的打包工具(如Webpack)不同,使用了基于原生 ES 模块的开发服务器,在开发过程中具有更快的冷启动时间和更高的性能。

Vite 针对现代浏览器进行了优化,利用原生 ES 模块的特性,可以直接在浏览器中执行模块,而无需像传统方式那样将它们打包成一个或多个文件。这使得在开发过程中,代码变更后的热重载速度非常快,加快了开发者的反馈循环。

使用vite创建你的vue项目

npm create vite@latest

这个命令会检查本地是否有vite,如果没有vite会提示您先下载vite脚手架,然后输入项目名称,选择项目依赖,创建好项目文件目录后,在项目目录下运行npm install下载依赖包,即可创建好一个vue项目。

vite目录

在这里插入图片描述

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

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

相关文章

0719_rasa网站的一些介绍

it’s not a bot, it’s your brand rasa is the leading open generative conversational ai platform for creating and managing ai assistants at scale. learn more talk with sales top enterprises trust rasa american express adobe dell accenture report ho…

使用Canal同步mysql数据到es

一、简介 Canal主要用途是基于 MySQL 数据库增量日志解析&#xff0c;提供增量数据订阅和消费。 当前的 canal 支持源端 MySQL 版本包括 5.1.x , 5.5.x , 5.6.x , 5.7.x , 8.0.x 二、工作原理 MySQL主备复制原理 MySQL master 将数据变更写入二进制日志( binary log, 其中记…

一篇文章带你用Jenkins和Kubernetes搭建DevOps平台

JenkinsKubernetes实现DevOps DevOps 介绍Jenkins环境准备准备JDK下载jdk安装jdk配置jdk环境变量 准备maven下载maven解压maven配置maven配置maven环境变量 安装Docker安装git 安装Jenkins初始化jenkins准备代码仓库和docker镜像仓库准备Kubernetes准备java项目搭建DevOps创建代…

ENSP实验一:防火墙基础配置

1、搭建拓扑图 配置client&#xff08;内网&#xff09;、FTP Server&#xff08;外网&#xff09;的IP地址 客户端设置&#xff1a; 服务端设置&#xff1a; 2、配置防火墙命名 进入防火墙&#xff0c;输入密码&#xff1a;默认为admin123 <USG6000V1>system-view /…

埃科光电在科创板上市:同创伟业、毅达资本为股东,实控人为董宁

7月19日&#xff0c;合肥埃科光电科技股份有限公司&#xff08;下称“埃科光电”&#xff0c;SH:688610&#xff09;在上海证券交易所科创板上市。本次上市&#xff0c;埃科光电的发行价为73.33元/股&#xff0c;发行数量为1700万股&#xff0c;募资总额约为12.47亿元&#xff…

Flutter 单线程模型保证UI运行流畅

Flutter 框架出色的渲染和交互能力。支撑起这些复杂的能力背后&#xff0c;实际上是基于单线程模型的 Dart。那么&#xff0c;与原生 Android 和 iOS 的多线程机制相比&#xff0c;单线程的 Dart 如何从语言设计层面和代码运行机制上保证 Flutter UI 的流畅性呢&#xff1f; 因…

❤️创意网页:HTML5 Canvas技术实现绚丽多彩的烟花特效教程

✨博主&#xff1a;命运之光 &#x1f338;专栏&#xff1a;Python星辰秘典 &#x1f433;专栏&#xff1a;web开发&#xff08;简单好用又好看&#xff09; ❤️专栏&#xff1a;Java经典程序设计 ☀️博主的其他文章&#xff1a;点击进入博主的主页 前言&#xff1a;欢迎踏入…

HhybridApp开发模式,你了解多少?

Hhybrid App顾名思义就是原生 App 与 Web App 的结合。它的壳是原生 App&#xff0c;但是里面放的是网页。 可以理解成&#xff0c;混合 App 里面隐藏了一个浏览器&#xff0c;用户看到的实际上是这个隐藏浏览器渲染出来的网页。 随着 Web 技术和移动设备的快速发展&#xff0…

长沙打造“全球研发中心城市”,智能网联产业如何交卷?

作者 | 魏启扬 来源 | 洞见新研社 知乎上有一个浏览超百万的热门问题——“大家怎么看待长沙这个城市&#xff1f;” 答主“星球研究所”的回答获得了高赞&#xff0c;“这是一个天性如火的城市”。 网红城市的外衣下&#xff0c;从湖南卫视的综艺节目&#xff0c;到网红美…

2023年牛客暑假多校-1 - J.Roulette题解

传送门&#xff08;lduoj&#xff09; 题目描述 Walk Alone is playing roulette, a kind of gambling. For simplification, we assume its rules and steps as follows: The whole gambling process composes of many turns.In the i-th turn:Walk Alone can choose an i…

ROS:nodelet

目录 一、前言二、概念三、作用四、使用演示4.1案例简介4.2nodelet 基本使用语法4.3内置案例调用 五、nodelet实现5.1需求5.2流程5.3准备5.4创建插件类并注册插件5.5构建插件库5.6使插件可用于ROS工具链5.6.1配置xml5.6.2导出插件 5.7执行 一、前言 ROS通信是基于Node(节点)的…

[RK3568] AMP架构

Rockchip 平台异构多系统 AMP &#xff08;非对称多核架构&#xff09;的开发软件包&#xff0c;支持 Linux(Kernel) 、 Standalone(Hal)、 RTOS(RT-Thread) 组合 AMP 构建形式。 Standalone(Hal) HAL&#xff1a;Hardware Abstraction Layer&#xff0c;硬件抽象层。 硬件抽…

抖音新号起号正确方法,如何操作?

抖音上有着越来越多的卖家注册账号&#xff0c;但刚开始在注册账号后&#xff0c;新号是没有什么流量的&#xff0c;所以想要获得更多的流量的话&#xff0c;在刚开始进行起号的时候就需要按照以下方式进行&#xff0c;下面就一起了解清楚。 第一个找对标内容&#xff0c;抖音…

Hadoop集群启动常见错误

错误一 &#xff1a; 配置文件错误 解决方案&#xff1a;检查配置文件&#xff0c;修改错误。重新分发&#xff08;同步&#xff09; 常见错误二 &#xff1a; 重复格式化 DataNode NameNode 在格式化时如果发现下面的提示说明重复格式化了 datanode和namenode的集群id…

KUKA机械臂的导纳控制

KUKA机械臂的导纳控制 在近期的实验中&#xff0c;需要根据传感器的给出的实时位置信息进行导纳控制&#xff0c;并实时改变导纳控制的参数。由于KUKA自带的实时导纳控制模型无法实时修改参数&#xff0c;因此尝试了自己实现导纳控制。网上这方面的资料比较少&#xff0c;整理…

Java阶段五Day09

Java阶段五Day09 文章目录 Java阶段五Day09网关Gateway跨域的问题熔断限流组件sentinel微服务场景熔断降级限流降级 sentinel学习案例sentinel介绍重要的核心概念准备一个测试的工程定义资源定义规则sentinel运行原理本地文件定义规则整合nacos实现规则的远程读取规则的内容详解…

【C++初阶】构造函数和析构函数

文章目录 一、类的六个默认成员函数二、构造函数三、析构函数 一、类的六个默认成员函数 &#x1f4d6;默认成员函数 用户没有显式实现&#xff0c;编译器会自动生成的成员函数&#xff0c;称为默认成员函数。 构造函数&#xff1a;完成对象的初始化工作。析构函数&#xff…

在dell server的UEFI mode下指定ISO安装Ubuntu

1.重启系统 在蓝色界面出现提示后选择F2进入 然后保存设置即可

Linux系统部署Nginx详细教程(图文讲解)

前言&#xff1a;本篇博客记录了我是如何使用Linux系统一步一步部署Nginx的完整过程&#xff0c;也是我学习之路上的一个笔记总结&#xff0c;每一行代码都进行了严格的测试&#xff0c;特此做一个技术分享&#xff01; 目录 一、安装依赖 二、安装Nginx 三、配置Nginx 四、…

【Docker】Docker基本管理命令

目录 一、Docker概述1.1容器化受欢迎的原因1.2Docker核心概念 二、安装 Docker2.1环境准备 三、Doker镜像操作镜像操作选项 四 、Docker 容器操作容器操作选项 一、Docker概述 Docker是一个开源的应用容器引擎&#xff0c;基于go语言开发并遵循了apache2.0协议开源。 Docker是…