1、MVVM开发模式的理解:
MVVM是指Model,View,ViewModel三者,也就是把MVC中的Controller演变为ViewModel
Model和View是没有联系的,它们是通过ViewModel进行联系的Model和ViewModel直接实现双向数据绑定的关系。
2、Vue中的指令:
v-if、v-show、v-for、v-html、v-on、v-model、v-text、v-bind
用法:
3、v-if和v-show的区别:.
使用区别:v-show会在使用上更加节省使用上的开销;当只需要一次显示或隐藏式,使用v-if更加合理;
4、VUE生命周期:
vue生命周期是指实例在创建和销毁的过程,由多个事件钩子函数组成,主要是创建、挂载、更新、卸载;第一次页面加载会触发创建和挂载的四个钩子函数(beforCreate、created、beforMount、Mounted),其中DOM渲染在mounted中完成;
var vm = new Vue({
el: ‘#app‘,
data: {
str:‘测试‘
},
methods: {},
// vue实例的挂载元素$el和数据对象data都为undefined,还未初始化。
// 加loading事件
beforeCreate() {
console.log("beforeCreate" + "------1");
},
// vue实例的数据对象data有了,$el还没有
// 结束loading、请求数据为mounted渲染做准备
created() {
console.log("created" + "-------2");
},
// vue实例的$el和data都初始化了,但还是虚拟的dom节点,具体的data.filter还未替换。
beforeMount() {
console.log("beforeMount" + "-------3");
},
// vue实例挂载完成,data.filter成功渲染
mounted() {
console.log("mounted" + "-------4");
},
// data更新前触发
beforeUpdate() {
console.log("beforeUpdate" + "-------5");
},
// data更新时触发
updated() {
console.log("updated" + "-------6");
},
// 组件销毁时触发
beforeDestroy() {
console.log("beforeDestroy" + "-------7");
},
// 组件销毁时触发,vue实例解除了事件监听以及和dom的绑定(无响应了),但DOM节点依旧存在
destroyed() {
console.log("beforeDestroy" + "------app8");
},
});
5、让css只在当前组件起作用
在当前组件的style标签中添加scoped
6、vuex介绍
是vue框架中的状态管理器,在main.js中引入store;
vuex有5种属性:State、Getter、Mutation、Action、Module
适用场景:登陆状态,组件之间的状态
7、Computed和Watch
computed叫做计算属性,而watch叫做侦听器。
computed:
watch:
8、vue.js核心:
数据驱动和组件化
9、vue中组件传值方法
父组件传给子组件:子组件通过props方法接受数据
子组件传给父组件:$emit方法传递参数
eventBus,相当于一个中转站,创建一个事件中心,用他来传递事件个接受事件。
10、vue双向绑定原理:
采用数据劫持结合发布者-订阅者的方式,通过Object.defineProperty()来劫持各个属性的setter,getter,在数据变动是发布消息给订阅者,触发相应的监听回调
11、vue-router:
(1)全局路由:主要由两种:前置守卫,后置守卫
前置守卫注册:beforeEach
const router = new VueRouter({ ... });
router.beforeEach((to, from, next) => {
// do someting
});
参数 to 、from 、next 分别的作用:
(2)路由独享的钩子
(3)组件内的导航钩子
12、axios:
axios 是一个基于Promise 用于浏览器和 nodejs 的 HTTP 客户端,用于请求后台资源的模块
使用:
(1)安装:npm install axios -s
(2)在main.js中引入import axios from(axios)
(3)挂载到vue实例中 vue.prototype.$axios=asios
13、vue中常见的修饰符:
.once:只触发一次
.self:当事件发生在该元素本身(非子元素)时触发
.stop:阻止单机事件冒泡
.prevent:提交事件不在重载页面
.captrue:事件发生时调用
14、v-if和v-for优先级
在v-if和v-for一起使用时,v-for具有比v-if更高的优先级,如果需要同时使用,v-if应该放在最外层。
15、scss介绍
scss是预处理css,须先下载三个loader:css-loader,node-loader,sass-loader;
16、的作用
keep-alive 是 Vue 内置的一个组件,可以使被包含的组件保留状态,或避免重新渲染。
原文:https://www.cnblogs.com/ITyunlin/p/14649371.html