1、vue基本介绍
1)vue是渐进式javascript框架,渐进式是一种设计方案,先使用vue基本的应用,然后根据需要依次增加自己需要的vue相关的组件,比如需要单页面应用就要导入vue router,需要状态管理就导入vuex,这样按需增加的过程就是渐进式;
2)vue特点:
- 响应式:实现数据驱动,不需要手动操作dom节点;
- 组件化开发:
- 组件:就是dom结构的抽象,最大程度的实现代码的复用;
- 组件化:前端最大程度的复用结构样式的行为,页面是由一个个小的组件构建而成 ; `
- 模板语法:里面有一些特色的语法,使用起来比较方面
3)相关技术:vue,vue-router,pinia,组件库(element-plus),vite,vue test utils, nuxt.js
2、vue的搭建
1)包管理器(npm, pnpm, yarn)
2)安装vue项目npm create vite@latest

目录特别说明:
- public:用来存放静态资源,这部分的资源不会经过构建工具处理,例如favicon图标
- .eslintrc.cjs:eslint配置文件
3、vite和webpack的工作原理比较
1)vite不打包,而是通过请求本地服务器的方式获取文件
2)常用的配置如下:
- base:用于设置项目的基本路径,针对于部署到非根目录的项目
- server:配置开发服务器的选项,例如:端口,自动打开浏览器,跨源资源共享,代理配置
3)build:包含构建过程的配置,例如:输出目录,生产环境源码地图,压缩,分块策略
4)css:用于配置css相关选项,如预处理配置,模块化支持等;
5)esbuild:可以自定义ESBuild的配置,例如:指定JSX的工厂函数和片段;
6)optimizeDeps:用于预构建的依赖,以加速冷启动的事件;
7)define:允许定义在源码中全局可用的常量替换;
8)publicDir:设置公共资源目录,默认为public
2、模板语法
1)模板:vue中构建视图的地方,写法和html一样;
2)模板插值:一对大括号标识,绑定动态的数据;
3)v-text和v-html的区别:v-text只插入文本,v-html会插入html元素;
3、生命周期
1)定义:生命周期是组件从创建到销毁所经历的一系列过程,这个过程中设置了一系列的特殊事件点,开发组件的时候可以在这些时间点添加一些函数,这样的函数称之为钩子函数;
2)生命周期图:
