Vue与 Vue组件部分

1.Vuex作用?哪种功能场景使用它?

答案:vue框架中状态管理.

场景有:单页面应用中,组件之间的状态。音乐播放、

登录状态、加入购物车

 

2.解释vuex最常用的两种属性

答案:分别State、Getter

vuex的State特性

A.Vuex就是一个仓库,仓库里面放了很多对象。其中state就是数据源存放池,

对应于一般Vue对象里面的data.

B.state里面存放的数据时响应式的,Vue组件从store中读取数据,若是store中的数据

发生变化,依赖这个数据的组件也会发生更新.

C.它通过mapState把全局的state和getters映射当前组件computed计算属性中

vuex的Getter特性

A.getters可以对State进行计算操作,它就是Store的计算属性

B.虽然在组件内也可以做计算属性,但是getters可以在多组件之间复用

C.如果一个状态只在一个组件内使用,是可以不用getters

 

3.请列举出3个Vue中常用的生命周期钩子函数

答案:

created:实例已经创建完成之后调用,在这一步,实例已经完成数据观测,

属性和方法的运算,watch/event事件回调.然后,挂载阶段还没开始,$el

属性目前还不可见.

mounted:el被新创建的vm.$el替换,并挂载到实例上去之后调用该钩子。

如果root实例挂载了一个文档内元素,当mouted被调用时vm.$el也在文档内。

activated:keep-alive组件激活时调用

 

4.mint-ui是什么?怎么使用?至少说出三个组件

答案:基于vue的前端组件库。npm安装,然后import样式和js,

Vue.use(mintUI)全局引入。

-在单个组件内部引入:import{ Toast } from 'mint-ui'

-组件1:Toast('登录成功');

-组件2:mint-header

-组件3:mint-swiper

 

5.vue-loader是什么?使用它的用途有哪些

答案:解析.vue文件的一个加载器,跟template/js/style转换成js模块。

用途:js可以写es6、style样式可以scss或less、template可以加jade等。

 

6.axios的特点有哪些?

Axios是一个基于promise的HTTP库,支持promise所有的API

它可以拦截请求和响应

它可以转换请求数据和响应数据,并对响应回来的内容自动转换JSON类型的数据

安全性更高,客户端支持防御XSRF

 

7.axios有哪些常用方法

答案:axios.get(url[,config])         //get请求用于列表和信息查询

axios.delete(url[,config])           //删除

axios.post(url[,data[,config]])    //post请求用于信息的添加

axios.put(url[,data[,config]])     //更新操作

 

8.Vuex的理解

答案:Vuex是一个专为Vue开发的应用程序的状态管理模式,他采用集中式存储管理

应用的所有组件的状态,并以相应的规则保证以一种可预测的方式发生变化.

核心概念:

Store:要是用Vuex,我们要创建一个实例store,我们称之为仓库,利用这个仓库store来对我们的

状态进行管理.

State

Vuex使用单一状态树,用一个对象State包含了整个应用层级的所有状态,你可以理解为这些

状态就是一堆全局变量和数据.

Getter

还记得Vue中的计算属性computed吗?当我们需要在data的基础上再派生一些状态的时候,

就会使用computed来实现。同样,当我们需要从state中派生出一些状态的时候,就会使用到getters,

你可以将getters理解state的计算属性。

Mutation

Vuex相比传统的全局变量有两个优势,其中一个是Vuex中的状态不能随意修改,要修改必要按照

Vuex提供的方式才能修改.

Action

Action类似于mutation,不同在于:

Action提交的是mutation,而不是直接变更状态.

Action可以包含任意异步操作,通过store.dispatch方法触发

 

9.Vue和angular的区别

答案:Vue:上手容易  指令以v-xxx   html+json,然后再new Vue()实例化对象 

个人维护项目  适合移动端

Angular:上手难   指令以ng-xxx  列表内容  所有属性和方法都挂载在$scope上

由google维护   适合web端

 

10.vue两种模式

答案:vue-router里面除了要配置路由词典外,还要选择 模式有hash模式和

history模式

 

11.vue的生命周期

答案:总共8个阶段:

创建前/后:创建模型数据和响应系统

beforeCreate    挂在元素$el:undefined   数据data:undefined

Created   挂在元素$el:undefined        数据data:{... }

载入前/后: 挂载 创建虚拟DOM 并生成真实DOM  认为Vue实例/组件

首次加载完成  可以发送ajax请求,也可以操作DOM元素

beforeMount:挂载元素$el undefined  数据data:{....}

Mouted:挂载元素$elDOM      数据data:{...}

更新前/后:模型数据发生变化时触发

BeforeUpdate:

Updated:

销毁前/后:  destroy()方法被调用时,要销毁组件/实例时

beforeDestroy:

Destroyed:

 

12.v-show和v-if指令的共同点和不同点?

v-show指令是通过修改元素的displayCSS属性让其显示或隐藏

v-if指令是直接销毁和重建DOM达到让元素显示和隐藏的效果

 

posted @ 2020-03-13 15:02  平凡人的普通修仙之路  阅读(150)  评论(0编辑  收藏  举报