1. 双向绑定的原理
当一个Vue实例创建时,Vue会遍历data属性,用 Object.defineProperty 将它们转为 getter/setter并且在内部追踪相关依赖,在属性被访问和修改时通知变化。每个组件实例都有相应的 watcher, 它会在组件渲染的过程中把属性记录为依赖,之后当依赖项的 setter 被调用时,会通知 watcher重新计算,从而使它关联的组件得以更新。
vue中双向绑定是一个指令v-model,是语法糖,默认情况下相于:value和@input。使用v-model可以减少大量繁琐的事件处理代码,提高开发效率,代码可读性也更好,通常在表单项上使用v-model,原生的表单项可以直接使用v-model,自定义组件上如果要使用它需要在组件内绑定value并处理输入事件
2.深拷贝,浅拷贝
深拷贝:把里面的内容一个一个复制出来,开一个新的内存放进去,内存地址不一样,互不影响
浅拷贝:一个发生变化,另一个也会跟着变,他只是指向另外一个地址
3.vue-router 路由传参
1)query方式传参和接收参数 query相当于get请求,页面跳转的时候,可以在地址栏看到请求参数
2)params方式传参和接收参数 params只能用name来引入路由,如果这里写成了path,接收参数页面会是undefined!!! params相当于post请求,参数不会再地址栏中显示
4.css属性