7,一句话面试
作者:
r8HZGEmq | 来源:发表于
2020-08-12 09:03 被阅读0次1,跨域。协议+端口。document.body.appendChild(iframe)
iframe.onload = function(){...}
2,生命周期钩子,先mixin后page
同名的函数名和变量名,只执行page
优:封装一小段复用的代码。缺:滥用
3,computed内部有缓存机制。watch立刻执行回调。
4,Object.definedProperty() 可枚 可配 value get set 可监听。依赖收集
vue- rander- virualDom- Dom
5,ATS的json格式 type:1 tag:div attrList:... parent:... children:[]
6,nextTick:下次DOM更新循环结束后,延迟回调。微任务优先级过高
created:对dom操作的js代码,放入nexttick。mounted不需要
某数据变化后,需要进行操作。但是数据同时也引起了dom变化。操作依赖dom变化也用nexttick
比如dom还没渲染完,尝试去拿组件上的日期,拿不到
数据变化 -- 数据的Setter函数通知Dep -- Dep管理所有的watcher -- watcher中同步立即执行渲染视图,异步push到下一个循环的队列中。setter>Dep>watcher>update>patch
为什么会有nextTick的出现。距离for 0-9999.每次变化都渲染,不妥。
用nextTick,只要这个for是在60ms内执行完,就只需要渲染0和9999
7,双向绑定 __proto__中有get和set,vue是通过obj.definedProperty来劫持的。
obj.defined(Book, 'name', {get.. set..})
view--data通过实践监听比如keyup data--view则是出发了劫持里的set来实现
8,
本文标题:7,一句话面试
本文链接:https://www.haomeiwen.com/subject/yojydktx.html
网友评论