1.Vue有哪几种导航钩子
vue-router 提供的导航钩子主要用来拦截导航,让它完成跳转或取消。
1.全局的 beforeEach(to,from,next)
2.单个路由独享的 beforeEnter(to,from,next)
3.组件级的beforeRouteEnter beforeRouteUpdate (2.2 新增) beforeRouteLeave
详参
2.Vue的双向数据绑定原理是什么
详参
vue实现双向数据绑定的原理就是利用了 Object.defineProperty() 这个方法重新定义了对象获取属性值(get)和设置属性值(set)的操作来实现的。Object.defineProperty() 方法会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性, 并返回这个对象。它接收三个参数,要操作的对象,要定义或修改的对象属性名,属性描述符。重点就是最后的属性描述符。
属性描述符是一个对象,主要有两种形式:数据描述符和存取描述符。这两种对象只能选择一种使用,不能混合两种描述符的属性同时使用。上面说的get和set就是属于存取描述符对象的属性。
然后我们可以通过在存取描述符中的get和set方法内写入自定义的逻辑来实现对象获取属性和设置属性时的行为。
例
3.对Vue生命周期的理解
4.什么是MVVM
model-view-viewmodel,MVVM是一种设计思想,model代表数据模型,也可以在model中定义数据修改和操作的数据逻辑,view代表UI组件,它负责将数据模型转换成UI展现出来,viewmodel是一个负责同步view和model的对象。
在MVVM框架中,view和model没有直接的联系,是通过viewmodel来进行交互的,model和viewmodel的交互是双向的。view的数据变化会同步在model中,model的数据变化也会在view中展现出来。
viewmodel通过双向数据绑定将view层和model层连接在一起,而且model和view之间是同步是自动的,因此只需要关注业务逻辑,不需要手动操作DOM,复杂的数据状态维护完全靠MVVM来统一管理。
5.MVC和MVVM之间的区别,他和其他框架的区别是什么
两者其实区别不大,都是一种设计思想,最主要的区别就是MVVM将MVC中的controller变成viewmodel,解决了MVC中大量的DOM操作使得页面渲染性能降低,加载速度变慢,影响用户体验。
区别:Vue是数据驱动,通过数据来显示视图层而不是节点操作。更适合数据操作比较多的情况下。
6.组件之间的传值
有两种,父组件---》子组件和子组件-----》父组件
父组件通过标签上定义传值,子组件通过props接收数据
子组件通过$emit方法传递函数
7.路由之间的跳转
声明式(标签)和编程式(js)
8.Vue中怎么使用自定义组件
第一步:在components目录新建你的组件文件(indexPage.vue),script一定要export default {}
第二步:在需要用的页面(组件)中导入:import indexPage from '@/components/indexPage.vue'
第三步:注入到vue的子组件的components属性上面,components:{indexPage}
第四步:在template视图view中使用,
例如有indexPage命名,使用的时候则index-page
9.vuex是什么 怎么使用 哪种场景中使用
Vue框架中状态管理,在main.js中引入store,注入。新建一个目录store。
应用场景:单页应用,组件之间的状态,音乐播放,登录状态,加入购物车
10.vuex有哪几种属性
有五种 state mutation getter action module
10.js继承的实现方式
原型链继承:将父类的实例作为子类的原型
构造继承:使用副类的构造函数来增强子类实例,等于是复制父类的实例属性给子类
实例继承:为父类实例添加新特性,作为子类实例返回
拷贝继承:支持多继承
组合继承:通过调用父类构造,继承父类的属性并保留传参的有点,然后通过将父类实例作为子类原型,实现函数复用
寄生组合继承:通过寄生方式,砍掉父类的实例属性,这样,在调用两次父类的构造的时候,就不会初始化两次实例方法/属性,避免的组合继承的缺点。
详参
Vue面试锦集
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 阅读时间:2016.10.3-2016.10.11 阅读的目标:学习乔布斯如何完成魔力演讲 阅读的方法:略读为主 ...