自我介绍(5%,但是一定程度上会决定后面面试问什么)
八股文问答(10%-20%,只要不是最基础的都答不上,不会减分太多。)
框架和工具问答(20%,vue/react的源码,vue/react的一些api使用,webpack/vite相关)
项目提问(30-40%,介绍自己的项目量级,难点,和项目中的工作内容与做的一些亮眼的事情)
场景题思路解决 (20%,列举一些场景,问你一个设计思路。)
1.1 名字-年限
1.2 主要技术栈(直接决定了框架提问部分问你啥,不熟悉的就在这里提前示弱没关系的
1.3 最近做的项目情况以及你在项目中的工作内容(一定要准备好,这里直接决定了后面会问你啥,甚至有可能引导面试官不问八股文直接问你的项目)
实例:我叫唐三十,现在做了11年前端,比较熟悉的框架时vue和react都做过大量的项目,uniapp和electron这些有一定的了解,做过一些练手项目。我上家公司是xxx公司,在公司做的核心项目是医院的一个管理系统。该系统主要是管理医院药房的就进出库的。主要推行的是广东和湖南的很多医院,比如xx医院,xx医院。这个项目是vue的技术栈。我在项目里是做作为核心前端,项目的整体的请求设计,很多业务组件抽离和质量的把控都是我这边来负责的
八股文不建议花太多时间,八股文记住一句话,只要不是最基础最常用的知识点都答不上就可以。
具体准备点如下:
1.1 css相关
常见的各种布局写法,左右,左中右,左增右减(flex)
自适应方案,rem,em,百分比den
1.2 网络协议
整个输入url到看到页面的流程
http,http2,https的区别
1.3 js异步
promise,不用手写promise,知道promise各种情况怎么处理。promise怎么写会走到哪块代码。
微任务宏任务
1,4 js基础
原型链,作用域,精度问题
3.1 源码,源码基本围绕下面四个问
vue/react响应式原理
diff算法
虚拟dom
vue/react的更新(vue的依赖收集,react的时间切片)
3.2 vue/react的一些方法的坑和混淆点
这里不用专门去学,你也来不及。平时多积累
vue-1,watch和computed的区别 2,nexttick 3,vue2和vue3的区别 4,v-if和v-show的区别 5,v-if和v-for的优先级。
react-useEffect,useRef等hook的应用场景和常见坑,自定义指令
3.3 构建工具(一般问的不多,除非你主动引导了)
如果你比较熟悉,可以引导人家来问题。可以加分,又可以让面试官没有足够的时间再问背的
webpack和vite的区别,怎么proxy代理等
核心准备项,主要下面四个方面
4.1 设计好自己项目的亮点和难点
一定要确保自己写的亮点难点自己知道具体怎么做
设计好一个业务中的使用场景越具体越好
4.2 工作中你做的一些有价值的事情
封装了一些业务组件,准备4-5个你设计的组件,一定不能是普通的功能组件,也就是element,antd这些组件库里已经有的现成组件。建议是项目业务具体挂钩的功能组件。比如图表组件,画廊组件,项目专门的文件上传组件。
做了一些项目工程化工具,让开发更高效,比如定义项目的eslint,项目模板生成脚手架。核心在于你思考自己平常开发项目时有哪些痛点,哪些重复做的机械操作,构想一个工具来决绝这个痛点。比如项目经常换个皮卖到个个公司,你就开发了一个脚手架,可以在脚手架选择皮肤,然后快速生成项目模板。比如项目经常需要mock,开发了一个mock工具
4.3 项目的量级和主要业务描述
5.1 回答时候一定要提供优质的解决思路,并思考到性能,体验,代码优化。最好套上一个设计模式
5.2 场景题没法背只能看你平常锻炼
平常多累积需求的解决方案,最佳实践,设计思路
多思考代码优化,性能优化。
多思考体验的优化
核心在于表明自己拥抱AI,擅用AI,并能够借助AI承当更多地工作量。