Watch中的deep:true 是如何实现的 当用户指定了 watch 中的deep属性为 true 时,如果当前监控的值是数组类型。会对对象中的每一项进行求值,此时会将当前 watcher 存入到对应属性的依赖中,这样数组中对象发生变化时也会通知数据更新。
ajax请求存放在哪个生命周期中?
在created的时候,视图中的 dom 并没有渲染出来,所以此时如果直接去操 dom 节点,无法找到相关的元素。
在mounted中,由于此时 dom 已经渲染出来了,所以可以直接操作 dom 节点 一般都被放到 mounted 中,为了确保逻辑的统一性,因为生命周期是同步执行的, ajax 是在异步执行中的。 服务端渲染不支持mounted方法,所以在服务端渲染的情况下统一放到created中。
vue框架是什么?有什么特点?
vue是渐进式的JS框架
特点: 1.遵循MVVM模式(m->model(数据对象) v->view(视图) vm->view model)
如何解决回调地狱呢
第一种使用ES6中的Promise,中文翻译过来承诺,意思是在未来某一个时间点承诺返回数据给你。
Promise有三种状态:pending/reslove/reject 。pending就是未决,resolve可以理解为成功,reject可以理解为拒绝。
同时Promise常用的三种方法 then 表示异步成功执行后的数据状态变为reslove catch 表示异步失败后执行的数据状态变为reject all表示把多个没有关系的Promise封装成一个Promise对象使用then返回一个数组数据。