网站首页 > 技术文章 正文
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 实例挂载了一个文档内元素,当 mounted 被调用时 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个阶段:
创建前/后: 创建模型数据和响应系统
beforeCreated 挂在元素$el:undefined 数据data:undefined
Created 挂在元素$el:undefined 数据data:{.....}
载入前/后: 挂载 创建虚拟DOM 并生成真实DOM
认为Vue实例/组件首次加载完成
可以发送ajax请求
也可以操作DOM元素
beforeMount:挂载元素$el undefined 数据data {.....}
Mounted: 挂载元素$el DOM 数据data{....}
更新前/后: 模型数据发生变化时触发
BeforeUpdate:
Updated:
销毁前/后: destroy()方法被调用时,要销毁组件/实例时
beforeDestroy
Destroyed
v-show和v-if指令的共同点和不同点?
v-show指令是通过修改元素的displayCSS属性让其显示或者隐藏
v-if指令是直接销毁和重建DOM达到让元素显示和隐藏的效果
猜你喜欢
- 2024-10-17 vue进阶系列——用typescript玩转vue和vuex
- 2024-10-17 百度Web前端开发实战案例解析(web前端开发案例教程)
- 2024-10-17 vue之vuex状态管理(vuex状态属性)
- 2024-10-17 从身份证号中截取出生日期(从身份证号截取出生年月日)
- 2024-10-17 websocket长连接和公共状态管理方案
- 2024-10-17 带你五步学会Vue SSR(vue sse)
- 2024-10-17 vue-element-admin 登陆(vue elements admin)
- 2024-10-17 Vue实现动态路由(vue动态路由三种方法)
- 2024-10-17 吃透 Vue 项目开发实践|16个方面深入前端工程化开发技巧【中】
- 2024-10-17 vue常见组件有哪些(vue的组件有哪些)
- 最近发表
- 标签列表
-
- cmd/c (64)
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- pythoncase语句 (81)
- es6includes (73)
- sqlset (64)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- chromepost (65)
- c++int转char (75)
- static函数和普通函数 (76)
- el-date-picker开始日期早于结束日期 (70)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- js数组插入 (83)
- linux删除一个文件夹 (65)
- mac安装java (72)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)