谈谈vue中父子,子父,兄弟之间、祖父与孙子节点通信的方法?
父传子:props
子传父:parent
兄弟: eventbus
祖父与孙子:provide + inject
谈谈你对vue插槽的理解?具体的分析一下什么是作用域插槽?
设置在组件内部就像一个盒子,位置由子组件决定,内容由父组件决定
(插槽就是一个可以将任何东西插入到当前页面的结构)
什么是作用域插槽:作用域插槽就是查找变量的规则,父组件有自己的作用域,只能在自己的作用域中查找自己定义过的变量,子组件也一样。
vue有三个核心概念,数据驱动,渐进式,组件化,谈谈你对这些的理解?
数据驱动:所谓的数据驱动就是当数据发生改变的时候,用户界面发生响应的变化,不需要手动去修改DOM
渐进式:声明式渲染=>组件系统=>客户端路由=>集中式状态管理=>项目构建,这么一个从左到右的递进的关系,可以只使用一部分,也可以全部使用。
组件化:就是可以让我们开发出一个个独立可以复用的小组件来使用,任何的应用都可以被抽象成一颗组件树,而有了组件化思想,我们就可以在开发过程中尽可能将页面拆分成一个个小的、可复用的组件。
你都做过哪些vue的性能优化?
首先是代码层面:
· v-if和v-for区分使用场景
· computed和watch区分使用场景
· v-for遍历必须为item添加key,而且避免同时使用v-if
· 路由懒加载
· 事件的销毁
· 图片资源懒加载
(后面还有)
谈谈你对vue过滤器的使用理解?
过滤器实质不改变原始数据,只是对数据进行加工处理后返回过滤后的数据再进行调用处理.
vue的$set是什么?都有什么用?
用$set可以对指定的属性 通过object.defineproperty增加get和set从而让其具备响应式。
有什么用:解决对象在添加新属性,这个属性在data对象中没有,当数据发生改变,页面不变的情况。