微信小程序的面试题以及项目中遇到的坑

前沿

  • 我使用WX原生WXJSsdk开发小程序是在小程序1.0版本的时候,那时候小程序刚刚上线没多久,当时也是踩了很多的坑,不过后来在面试的过程中也遇到好多问题,现在回忆记录下来,方便后续学习。
  • 好在现在我使用uni-app开发多终端的项目,使用vue写就好了很多。
  • 好多面试官都喜欢问小程序跟app,小程序语言跟vue,原生js,有什么区别?下边我就一一作出解释。

es6语法的知识点和面试题总结

前端面试题总结以及一些面试心得

vue面试题以及项目中遇到的坑


在小程序中是通过

  • App()来注册一个小程序
  • Page()来注册一个页面

step 一,小程序里边的双向绑定和vue的双向绑定有什么区别?

小程序数据双向绑定::

  • 1,首先利用bindinput来触发改变input输入框中的值
  • 2,使用data-name来获取改变的数据的内容
  • 3, bindinput触发后在方法中通过e.currentTarget.dataset.name来获取改变后的内容‘
  • 4, 通过this.setData()来改变data-name绑定的参数就好了
    举个例子一看便知
    详情请移步微信小程序input双向绑定原理详解

step 二, 小程序父子组件之间的传参

详情请移步微信小程序父子组件之间的通信

step 三, 请谈谈小程序的主要目录和文件的作用?

这个问题应该是初学时问到的问题

  • project.config.json 项目配置文件
  • App.js配置一些全局的基础数据
  • App.json 小程序底部tab栏,标题栏的文字,颜色,大小,路由,等的设置
  • App.wxss 全局的公共样式
  • Pages配置每个页面
  • index.jsonindex.wxmlindex.wxssindex.js

step 四,你是怎么封装微信小程序的数据请求的?

  • 1,在根目录下创建utils目录以及api.jsapiConfig.js文件
  • 2, 在apiConfig.js文件封装请求的方法,请求头,token等的异常处理
  • 3,在api.js中引入apiConfig.js的方法,设置页面中需要的接口地址,就可以了,
    这里大概跟vue的有相类似之处

step 五,微信小程序的生命周期

这个问题vue也会经常问到的对吧


全局文件app.js中定义了一些声明周期的方法

  • onLaunch() 监听小程序初始化 当小程序初始化完成时,会触发 onLaunch(全局只触发一次)
  • onShow() 监听小程序显示 当小程序启动,或从后台进入前台显示,会触发 onShow
  • onHide() 监听小程序隐藏 当小程序从前台进入后台,会触发 onHide
  • onError() 错误监听函数 当小程序发生脚本错误,或者 api 调用失败时,会触发 onError 并带上错误信息

这是每个page页面的周期函数

  • onLoad() 页面加载时触发,全局只会调用一次,在该周期内可获取当前页面路径的参数
  • onShow() 页面显示时触发或者切入前台时触发,也就是在该周期内可以获取请求数据
  • onReady() 页面初次渲染完成时触发,只会调用一次,代表页面已经可以和视图层进行交互
  • onHide() 页面隐藏或者切入后台时触发,如底部tab切换到其他页面或小程序切入后台时触发。
  • onUnload() 页面卸载时触发

六,小程序页面之间传递参数的方法有哪些?

  • 1,使用全局变量
  • 2,页面跳转或者重定向使用url传参数
  • 3,使用小程序自带的存储传参数
    详情请移步微信小程序页面之间传递参数方法小结

七 ,小程序template的使用

详情请移步小程序的模板template的使用以及传参

结束语

还有好多没有总结到的知识点,慢慢来。

你可能感兴趣的:(小程序)