网易-研究院-前端一面
网易-研究院-前端一面
面试分为三个部分30分钟:1.自我介绍 2.专业面试 3.反问环节
1. 你觉得项目中最难的点是什么?
2. 你说了动态表单,能直接手写一个吗?
3. 根据写的代码,ref='sel'获取了DOM元素,this.$refs.sel 引用这个DOM元素,你知道Vue是如何实现ref的吗?
4. 看你用了v-model,Vue是如何实现双向绑定的?
回答v-bind+input。
5. 我想知道的不是 v-bind+input。(额。我问他您想问的是不是Vue的响应式原理),对,那你解释一下响应式原理?
6. 看你用了@绑定事件,Vue是如何实现并暴露出这个事件的?
回答调用 JS 支持DOM0的el.on事件名 = function() {...},或者DOM1的el.addEventLister(事件名,function(){...})。
7. 那是JS的底层实现,我想知道Vue是如何实现的?
最后面试官说是this.$emit(自定义事件名,传入参数)。
8. 手写一个发布/订阅模式,数据结构如下:
const eventEmitter = { // 注册事件 on: function(eventName, fn){ // 补充代码...}, // 撤销事件 off: function(eventName){// 补充代码...}, // 触发事件 trigger: funnction(eventName,data){// 补充代码...} }
根据你的回答来提问,面试官人很好,大概率是凉了。
#网易面试#