一、写在前面
1.前端的技术框架历史演变
参考链接:https://blog.csdn.net/juzipchy/article/details/76408029
2. 现有公司的几种开发模式
2.1 首先小程序不是凭空产生的,它是基于前端技术的发展而逐步演变过来的。那么公司开发小程序也不是重新开发的,而是基于原有的前端和业务之上的。
2.2 可以分为这两类
2.2.1 新项目开发小程序,无任何历史包袱或者业务
2.2.2 已有web或者app产品,想将部分功能复制至小程序上,那么该公司可能用到的技术为基于web或者vue等现有框架开发小程序,如美团等公司
3.小程序的应用场景
小程序不是取代现有的app或者web端,而是多场景的一个延伸,比如实用或者社交性较高的小功能。
在面试前可以看一下,该公司是干嘛的,为什么会开发小程序,在什么场景下会用到,这样面试官会对你的好感有所提升。
二、小程序的面试点介绍
1.小程序的运行环境
微信小程序:https://developers.weixin.qq.com/miniprogram/dev/framework/details.html
2.小程序结构
微信小程序:https://developers.weixin.qq.com/miniprogram/dev/framework/structure.html
3.小程序自定义组件(时间定时器的组件怎样去实现,简述下)
微信小程序:https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/
支付宝小程序:https://docs.alipay.com/mini/framework/custom-component-overview
3.1 提几个问题:
3.1.1 父组件怎么调用子组件的内部数据
3.1.2 子组件怎么告诉父组件调用的方法或者结果数据
3.1.3 子组件在开始渲染的时候,挂载组件的关键词是什么
3.1.4 在微信里面,子组件 数据改变时,有观察者模式,请简述下怎么实现观察者模式
3.1.5 支付宝和微信小程序的子组件里面,子组件的 wxss或者acss 会影响父组件的样式吗
3.1.6 有时候可能会实现多个自定义组件,而这些自定义组件可能会有些公共逻辑要处理,那么我怎么减少代码冗 余
4.常见的开发问题
4.1 你会怎样包装小程序的http请求接口 另外简述一下restful风格
4.2 目前几种流行的开发框架,挑一个自己用过的讲一下
目前流行的框架介绍:http://www.cnblogs.com/Smiled/p/9806781.html
4.3. 提升小程序的响应速度你会从哪几个方面进行入手
4.4 下拉刷新的实现方式有哪几种,另外说一下下拉刷新的注意点有哪些
4.5 微信或者支付宝的小程序支付接口做过吗?能不能说明一下怎么调用
4.6 小程序的路由跳转有哪几种方式,其中重点说下 wx.navigateBack 或者 my.navigateBack
补充:常见的面试问题: https://blog.csdn.net/xchaha/article/details/81019945
三、一些建议
1.现在的前端框架层出不穷,但是本质却是不变的,务必掌握好es6的js语法,要突出一个扎实。如果有空,希望能够对后端有一个清晰的认识,了解java等常用的强制类型语言,加深对js面向json编程的弱类型语言的理解。
2.做好一个优秀的前端,请深入了解react 和 vue这两个框架,并且会自定义组件,会自己独立的包装组件,能够明白这两个框架的渲染原理,善于利用第三方的优秀ui组件和第三方的流行框架,其实小程序的原理和这两个框架也差不多。
3.在面试前,请对该公司有一个清晰的认识,包括业务和已开发的产品,然后根据他们采用的技术来制定有针对性的面试复习。