Vue 是一个渐进式的前端开发框架。目前主要的 Vue 版本是 3.x 的
官网:https://cn.vuejs.org/
MVC 分为三部分,Model、View、Controller
MVVM 又叫数据双向绑定,分为三部分:Model、View、ViewModel
在 vue 中所有以 v-开头的属性都是 vue 的内置指令
v-model
实现数据和表单元素的绑定,相当于绑定了 input 的 value 属性和 oninput 事件
v-if
控制标签的显示和隐藏。直接删除或者插入标签
v-show
控制标签的显示和隐藏。设置 display 属性。建议使用,性能更好一些。
v-bind
作用是绑定属性,v-bind:可以简写为:
在做样式绑定的时候,样式名有三种写法
v-html 和 v-text
v-html 展示富文本内容,相当于 innerHTML
v-text 直接展示内容,相当于 innerText
v-on
实现事件的绑定,v-on:可以简写为@
v-for
是我们要学会的最重要的一个指令。用来生成重复的数据,循环生成数据。
可以循环常见的数据类型,如:字符串,数字,数组,对象
Vue 中组件定义分为两种方式:全局组件和局部组件。全局组件定义好之后可以直接使用,局部组件定义好之后需要先注册再使用
const Counter = {
template: ``,
};
全局组件定义
const app = Vue.createApp({
data() {
return {};
},
});
// 定义一个全局组件
app.component("counter", {
template: ``,
data() {
return {
count: 1,
};
},
});
组件传参
插槽(slot)
插槽相当于占位符,常见的插槽有默认插槽和具名插槽
Vue 组件生命周期分为 4 个阶段,创建,挂载,更新和销毁。每一个阶段对应两个钩子函数。Vue 组件生命周期中有八个常见的生命周期钩子函数和两个需要配合 keep-alive 一起使用的生命周期钩子函数
嵌套组件的生命周期钩子函数执行顺序:当执行到父组件的 beforeMount 的时候,开始解析 dom,会执行每一个子组件的创建到挂载完成的生命周期,当所有的子组件都挂载完成之后会执行父组件的 mounted 函数
还有两个额外的,需要配合 keep-alive 一起使用的
全局 API
component 动态组件
它是一个内置组件,通过 is 属性控制当前显示哪一个组件
keep-alive 的作用是对组件做缓存
当我们为组件设置了 keep-alive 包括的话,那么组件就会多出来两个生命周期钩子函数 activated 和 deactivated
计算属性和 watch
计算属性和方法调用的区别:
Teleport 组件
Vue3 新增的,传送。可以通过设置 to 属性把内部的标签定位到 dom 元素的指定位置
Transition 组件
可以为内部的标签添加动画效果,在标签显示或者隐藏的时候自动的添加 class 样式名。一般情况下我们会介个 animate.css 插件一起使用。
我们以前写 vue 的写法叫 options api(选项式 API),这种写法是 vue2 中的。在 vue3 中新增了组合式 API(Composition API)
setup 是 vue3 中新增的内容,这个方法中不能访问 this,可以结合 vue3 新增的一些组合式 api 写法实现新的组件语法
vite 官网:https://cn.vitejs.dev/
创建项目
npm init vite@latest # 创建一个项目,根据自己的需要 选择就好
路由插件
官网:https://router.vuejs.org/zh/
路由的作用是实现页面之间跳转串联。当我们访问指定的地址的时候,展示不同的页面
路由常见的模式有两种:hash 和 history
hash 路由是浏览器本身就支持的,不需要做额外的配置。但是 history 模式,在上线的时候需要 web 服务器做特殊的重定向配置。
web 服务器就是用来发布 web 系统的软件(是属于运维的范畴,作为了解就好),常见的 web 服务器:
使用
npm i vue-router # 安装插件
// 引入对应的模块
import {} from "vue-router";
**路由传参:**路由传参有两种常见的模式,params 和 query
404 页面处理的时候,4.x 的版本和以前的写法有差异。具体见文档
beforeRouteUpdate,组件内的钩子函数,组件被复用但是 url 地址改变
ui 组件库
vant(移动端)
[ Vant ]( https://vant-contrib.gitee.io/vant/#/zh-CN/home ) 是有赞出的一款移动端 ui 组件库
npm i vant #
element-ui(pc 端)
状态管理插件
我们开发的时候经常需要做数据管理。所有的数据都存储在全局中,需要使用的时候直接拿来用就好
单向数据路
数据是单向流动的,在视图中派发一个 action 改变数据,数据改变之后视图重新渲染
vuex
pinia
它是一个新的状态管理插件,作用是代替 Vuex。是目前官方推荐的一个工具
pinia 官网:https://pinia.web3doc.top/
npm i pinia # 安装
我会根据课程情况,穿插在知识点部分进行讲解
插件的作用是做内网端口映射,可以把本地的一个端口映射到一个外网的地址,让别所有人都能看。可以用来给客户做演示
localtunnel官网:https://github.com/localtunnel/localtunnel
使用方法:
npm i localtunnel -g # 全局安装
lt -p 8888 -s xxx # -p 后面跟的是端口号; -s 后面跟的是自定义域名
是另一个包管理工具,是目前比 npm 和 yarn 都要好用的一个。就是用来做包管理
npm i pnpm -g # 全局安装
如有不同见解,欢迎讨论,更多内容,正在更新中。。。。。。
Vue2笔记整理_旺旺大力包的博客-CSDN博客