掘友等级
获得徽章 0
Vuex通过集中式的状态存储解决了Vue组件之间的通信问题。组件可以通过派发(dispatch)动作和提交(commit)变更来更新状态,同时可以通过获取器(getter)从状态中获取数据。
Vuex本身不是持久化存储
1. 使用localStorage自己写
2. 使用vuex-persist插件
在Vuex中进行异步操作,可以使用动作(Action)。动作可以包含异步操作,例如发送HTTP请求或延迟操作,然后再提交(commit)变更以更新状态
#每天一个知识点# 全局:前置守卫:beforeEach((to, from, next)=>{to:即将进入的路由对象form:当前导航正要离开的路由next():进行管道中的下一个钩子})
解析守卫:beforeResolve((to, from, next)=>{})
后置钩子:afterEach((to,form)=>{})
路由:beforeEnter((to, from, next)=>{})
组件:beforeRouteEnter (to, from, next) {// 在渲染该组件的对应路由被 confirm 前调用// 不!能!获取组件实例 this// 因为当守卫执行前,组件实例还没被创建},
#每天一个知识点# 在Vue Router中,可以使用通配符路由(`*`)来处理404页面。将通配符路由放在最后,表示匹配所有未被其他路由匹配到的路径。在通配符路由的组件中,可以渲染404页面的内容。
#每天一个知识点# v-model用于表单数据的双向绑定,其实它就是一个语法糖,这个背后就做了两个操作:
v-bind绑定一个value属性;
v-on指令给当前元素绑定input事件。
#每天一个知识点# Vue Router提供了全局的路由守卫和组件级别的路由守卫。全局的路由守卫包括beforeEach、beforeResolve、afterEach,它们可以用来在路由导航之前、解析之前以及导航完成后执行相应的逻辑。组件级别的路由守卫包括beforeRouteEnter、beforeRouteUpdate和beforeRouteLeave,它们用于在组件生命周期中执行路由相关的逻辑,如获取数据、权限验证等。
MVC 通过分离 Model、View 和 Controller 的方式来组织代码结构。其中 View 负责页面的显示逻辑,Model 负责存储页面的业务数据,以及对相应数据的操作。并且 View 和 Model 应用了观察者模式,当 Model 层发生改变的时候它会通知有关 View 层更新页面。Controller 层是 View 层和 Model 层的纽带,它主要负责用户与应 用的响应操作,当用户与页面产生交互的时候,Controller 中的事 触发器就开始工作了,通过调用 Model 层,来完成对 Model 的修 改,然后 Model 层再去通知 View 层更新。
vue中对数组没有进行defineProperty,而是重写了数组的7个方法。 分别是:
push,shift,pop,splice,unshift,sort,reverse
因为这些方法都会改变数组本身。
数组里的索引和长度是无法被监控的。
#每天一个知识点# 主要包括beforeEach和aftrEach,beforeEach函数有三个参数:
to:router即将进入的路由对象
from:当前导航即将离开的路由
next:Function,进行管道中的一个钩子,如果执行完了,则导航的状态就是 confirmed (确认的);否则为false,终止导航。
afterEach函数不用传next()函数这类钩子主要作用于全局,一般用来判断权限,以及以及页面丢失时候需要执行的操作,例如:
#每天一个知识点# Vue的生命周期钩子是回调函数,当创建组件实例的过程中会调用相应的钩子方法。 内部会对钩子进行处理,将钩子函数维护成数组的形式。
computed 是计算属性,依赖其他属性计算值,并且 computed 的值有缓存,只有当计算值变化才会返回内容,它可以设置 getter 和 setter。
watch 监听到值的变化就会执行回调,在回调中可以进行一些逻辑操作。
计算属性一般用在模板渲染中,某个值是依赖了其它的响应式对象甚至是计算属性计算而来;而侦听属性适用于观测某个值的变化去完成一段复杂的业务逻辑
slot 又名插槽,是 Vue 的内容分发机制,组件内部的模板引擎使用 slot 元素作为承载分发内容的出口。插槽 slot 是子组件的一个模板 标签元素,而这一个标签元素是否显示,以及怎么显示是由父组件决 定的。slot 又分三类,默认插槽,具名插槽和作用域插槽。
keep-alive 是 Vue 内置的一个组件,可以使被包含的组件保留状态,或避免重新渲染
vue 如果碰到界面不刷新 可以使用 forceupdate 强制刷新界面
#每天一个知识点# v-for需要使用key来给每个节点做一个唯一标识,Diff算法就可以正确的识别此节点。主要是为了高效的更新虚拟DOM。
#每天一个知识点# Vue组件之间可以通过Props和Events进行通信。通过Props,父组件可以向子组件传递数据;通过Events,子组件可以向父组件发送消息。
在导航守卫中,`next`函数用于控制路由的跳转行为。调用`next`函数并传递一个参数,可以实现不同的导航操作。常见的参数有`next()`(继续导航),`next(false)`(取消导航),`next('/path')`(重定向到指定路径)等。 #每天一个知识点#
在Vue Router中,可以使用通配符路由(`*`)来处理404页面。将通配符路由放在最后,表示匹配所有未被其他路由匹配到的路径。在通配符路由的组件中,可以渲染404页面的内容。 #每天一个知识点#
#每天一个知识点# 动态路由是指根据路由参数的不同,动态地加载不同的组件或数据。在Vue Router中,可以通过在路由配置中定义动态片段来实现动态路由。动态片段由冒号(:)开头,例如/user/:id。在组件中,可以通过$route.params来获取动态路由参数的值。
下一页