精品文档
精品文档
PAGE
精品文档
面试题vuex的五个状态
VueX是一个专门为状态(你可以理解成vue
Vue.js应用设计的状态管理架构,统一管理和维护各个组件里的某些data)。
vue
组件的可变化
Vue有五个核心概念,state,getters,mutations,actions,modulesstate=>基本数据==datagetters=>从基本数据派生的数据==computedmutations=>提交更改数据的方法,同步!==methodsactions=>像一个装饰器,包裹mutations,使之可以异步。modules=>模块化Vuex潿缢蟻領嬤邇猻騰餘绪餘颏沤肅缚。
。
2vue周期
(钩子函数)
created可获取数据
Mounted
可操作
DOM
Vue实例有一个完整的生命周期,也就是从开始创建、初始化数据、编译模板、挂载染→更新→渲染、销毁等一系列过程,我们称这是Vue的生命周期。通俗说就是销毁的过程,就是生命周期。分为三个阶段:初始化、运行中、销毁。鐋鷥銦饨镗鶇馀认夾恼协彥鳓讽發。
Vue
Dom、渲实例从创建到
beforeCreate:实例、组件通过newVue()创建出来之后会初始化事件和生命周期,然后就会执行beforeCreate钩子函数,这个时候,数据还没有挂载呢,只是一个空壳,无法访问到数据和真实的dom,一般不做操作们执钶优敛藶刍傷脛径阁记绚點踴。
Created:挂载数据,绑定事件等等,然后执行可以更改数据,在这里更改数据不会触发updated昼螞餍诗镖凍归呂鋼杨闩鐠劢嘩樁。
created函数,这个时候已经可以使用到数据,也函数,在这里可以在渲染前倒数第二次更改数据的
机会,不会触发其他的钩子函数,一般可以在这里做初始数据的获取
beforeMount:接下来开始找实例或者组件对应的模板,编译模板为虚拟dom放入到render数中准备渲染,然后执行beforeMount钩子函数,在这个函数中虚拟dom已经创建完成,马上就要渲染,在这里也可以更改数据,不会触发updated,在这里可以在渲染前最后一次更改数据的机会,不会触发其他的钩子函数,一般可以在这里做初始数据的获取錕韻锆徹碜显蓮襠禅铖壯鸠媧细賻。
函
Mounted:接下来开始render,渲染出真实dom,然后执行mounted经出现在页面中,数据、真实dom都已经处理好了,事件都已经挂载好了,等事情...碩鐸損氣吨轆觋没團躓铪钲传锒缙。
钩子函数,此时,组件已可以在这里操作真实dom
beforeUpdate:当组件或实例的数据更改之后,会立即执行beforeUpdate,然后vue的虚拟dom机制会重新构建虚拟dom与上一次的虚拟dom树利用diff算法进行对比之后重新渲染,一般不做什么事儿紱栋鷓鳟誼斃討榉鹭颼貶睾穌崂聍。
Updated:当更新完成后,执行
updated,数据已经更改完成,
dom
也重新
render
完成,可以操
作更新后的虚拟
dom
beforeDestroy
:当经过某种途径调用
$destroy
方法后,立即执行
beforeDestroy,一般在这里做一
些善后工作,例如清除计时器、清除非指令绑定的事件等等
Destroyed:组件的数据绑定、监听
...去掉后只剩下
dom
空壳,这个时候,执行
destroyed,在这
里做善后工作也可以钩子函数的的实际应用
beforecreate:
举个栗子:可以在这加个
loading
事件
created:在这结束loading,还做一些初始化,实现函数自执行mounted:在这发起后端请求,拿回数据,配合路由钩子做一些事情beforeDestroy:你确认删除XX吗?destroyed:当前组件已被删除,清空相关内容词僂乐唠辅绊氳邁訝苁灭圆耻禅肤。
3cookie、localstroge、localSeesion的区别共同点:都是保存在浏览器端,且同源的。区别:安全性、大小、有效期、作用域1cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递。而sessionStorage和localStorage不会自动把数据发给服务器,仅在本地保存。cookie数据还有路径(path)的概念,可以限制cookie只属于某个路径下。2存储大小限制也不同,cookie数据不能超过4k,同时因为每次http请求都会携带cookie,所以co