09 2022 档案
摘要:为什么会丢失响应性 失去响应性的情况出现在解构时。 vue2中使用Object.defineProperty()实现响应式,其原理是拦截了对象中属性的get/set,即使该属性被解构出来,仍然保留了get/set,因此不会丢失响应性。 而vue3中使用Proxy实现响应式,其原理是拦截了proxy对
阅读全文
摘要:vue中的透传会将父组件传给子组件的$attrs放到子组件的根元素上,我们常用这个特性来传递class、style,以指定子组件的长宽。 但在写诸如对话框这样的组件时,对话框组件的根组件是那一层黑色的蒙版。父组件并不希望指定蒙版的长宽,而是希望指定对话框的长宽,这时候我们就需要控制透传的路径。具体做
阅读全文
摘要:在Vue中,数据的更新不会马上同步到视图上,而是放在一个异步更新队列中,在下一个事件循环tick集中更新。 由于这个机制,我们如果想在基于更新后的DOM状态做点什么,就没办法在更新数据后马上获取DOM,因此为此时数据还未同步到视图上。而Vue提供了nextTick(),它可以传入一个回调函数,这个回
阅读全文