面试
<h3>1.MVC、MVVC、MVVM模式理解:</h3>
<p>1.1 MVC(Model-View-Controller):
模型:数据层,存储数据
视图:展现层,用户看到的页面
控制器:协调层,协调model和view,根据用户在view上的动作在model上作出对应的更改,同时将信息返回到view</p>
<p>1.2 MVVM(Model-View-ViewModel):
模型:数据层,存储数据
视图控制器:从viewmodel中获取数据然后显示
视图模型:model和view的粘合剂,封装业务逻辑、网络处理、数据缓存</p>
<p>1.3 MVVC(Model-View-View-Controller):
模型:数据层,存储数据
视图:展现层,创建需求创建cell
视图:定义数组,接收控制中的数据,处理回调</p>
<hr />
<h3>2.vue:</h3>
<h4>2.1 指令:</h4>
<p>v-html、v-show、v-if、v-for、v-model等</p>
<h4>2.2 v-if和v-show区别:</h4>
<p><strong>v-show</strong>:只控制元素显示方式,将display属性在block和none来回切换,频繁显示/隐藏时使用;
<strong>v-if</strong>:会控制DOM是否存在,一次显示/隐藏时使用</p>
<h4>2.3 vue响应式原理:</h4>
<h4>2.4 生命周期:</h4>
<p>beforeCreate、created、beforeMount、mounted、beforeUpdate、updated、beforeDestroy、destroyed</p>
<h4>2.5 computed和watch的使用和区别:</h4>
<p><strong>computed</strong>:计算属性,在一个数据属性在它依赖的属性发生变化时也要变化时使用
<strong>watch</strong>:数据变化时,执行异步操作或较大开销操作时使用</p>
<hr />
<h3>3.vuex:</h3>
<h4>3.1 是什么:</h4>
<p>相当于是一个全局的状态管理,所在项目中任何组件都可以从中获取、修改数据状态,并且修改会得到全局的相应变更</p>
<h4>3.2 核心概念:</h4>
<p><strong>State</strong>:vuex中的公共状态,相当于存储数据状态的仓库(store)
<strong>Getters</strong>:可以理解为公共状态的computed(计算属性),它的返回值会根据它的依赖缓存起立,只有当它的依赖发生变化是才会被重新计算
<strong>Mutations</strong>:相当于store中的methods,用于存放改变数据状态的回调函数,mutations中不允许出现异步操作
<strong>Actions</strong>:类似于Mutations,不同在于Actions提交的是Mutations而不是直接变更状态,Actions中可以包含异步操作
<strong>Modules</strong>:模块化管理状态树</p>
<hr />
<h3>4.React:</h3>