- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
微信小程序面试题及答案(实战版)
一、基础概念题(共5题)
问:微信小程序和普通H5的核心区别是什么?实际开发中要注意哪些适配问题?
答:核心区别在运行环境(小程序是微信内置的双线程渲染引擎,H5在浏览器)、API权限(小程序能调用微信支付、地理位置等原生能力,H5受限)、体积限制(主包2M内)。实际开发要注意:①样式不支持通配符*、body,需用page标签替代;②路由跳转有层级限制(最多10层),需避免深层嵌套;③本地存储wx.setStorage单个key最大1024KB,需拆分大数据。
问:小程序的目录结构中,app.json和page.json的作用分别是什么?举1个实际配置案例。
答:app.json是全局配置,管页面路径、窗口样式、tabBar、网络超时等;page.json是页面单独配置,优先级高于全局,可单独设置当前页面的导航栏标题、是否下拉刷新等。案例:全局app.json设置所有页面导航栏为蓝色,某详情页需红色,就在该页面的page.json中配置navigationBarBackgroundColor:#ff0000覆盖全局。
问:小程序的“双线程模型”指什么?为什么要这么设计?
答:双线程是逻辑层(JS线程)和视图层(WebView线程)分离。逻辑层负责业务逻辑(数据处理、接口请求),视图层负责页面渲染,通过微信原生桥接器通信。设计目的:①隔离风险,避免JS长时间运行阻塞页面渲染;②保障微信生态安全,限制逻辑层对原生API的直接访问。
问:wx:for循环渲染时,为什么要加wx:key?wx:key可以用哪些值?
答:加wx:key是为了提高列表渲染性能,让小程序准确识别列表项的唯一性,避免重复渲染或错乱。可用值:①数组中item的唯一属性(如id,需是字符串/数字);②保留关键字*this(仅当item本身是唯一值时,如纯数字数组)。
问:小程序的本地存储有哪几种方式?它们的区别和使用场景是什么?
答:三种方式:wx.setStorageSync(同步)、wx.setStorage(异步)、wx.setStorageInfo(获取存储信息)。区别:同步方法会阻塞后续代码执行,异步不会;同步适合少量数据(如用户ID),异步适合大数据(如列表缓存)。场景:①同步:登录后存储token,需立即使用;②异步:缓存首页banner图数据,不影响页面加载。
二、生命周期题(共3题)
问:小程序的应用生命周期和页面生命周期有哪些关键函数?请说明它们的执行顺序(以打开新页面为例)。
答:应用生命周期(app.js):onLaunch(初始化,全局只执行1次)→onShow(小程序显示)→onHide(小程序隐藏);页面生命周期(page.js):onLoad(页面加载,只执行1次)→onShow(页面显示)→onReady(页面渲染完成)→onHide(页面隐藏)→onUnload(页面卸载)。执行顺序:打开小程序时,app.onLaunch→app.onShow→页面onLoad→页面onShow→页面onReady;跳转新页面时,旧页面onHide→新页面onLoad→新页面onShow→新页面onReady。
问:onLoad和onShow的区别是什么?实际开发中,哪些逻辑适合放在onLoad,哪些适合放在onShow?
答:onLoad只在页面加载时执行1次,接收页面跳转的参数(options);onShow每次页面显示时都会执行(如返回页面、小程序从后台切前台)。适合onLoad:①初始化页面数据(如根据options.id请求详情接口);②绑定一次性事件。适合onShow:①刷新页面数据(如返回购物车后刷新商品数量);②检查登录状态(如小程序切前台后验证token是否过期)。
问:小程序中,页面之间传递数据有哪些方式?请分别说明适用场景。
答:常见方式及场景:①路由传参(wx.navigateTo的url带参):适合少量简单数据(如ID、名称),缺点是参数暴露在URL中,不能传对象;②本地存储:适合跨页面共享数据(如用户信息、全局配置),注意敏感数据需加密;③getCurrentPages()获取页面栈:适合相邻页面通信(如父页面给子页面传数据),需注意页面栈层级限制;④全局变量(app.js中定义):适合全局共享的常量(如接口域名),不适合频繁修改的数据。
三、实战开发题(共4题)
问:小程序开发中,如何解决“数据更新了但页面没渲染”的问题?请举2个实际案例。
答:核心原因是数据未被小程序的响应式系统监测到。解决方法:①
您可能关注的文档
- 建造师执业资格考试模拟题及答案解析.docx
- 建筑材料基础试题及答案.docx
- 建筑材料课程期末考试题及答案.docx
- 建筑材料期末考试题及答案.docx
- 建筑电工考试题库及答案.docx
- 建筑电工职业技能考核试题及答案.docx
- 建筑构造课程期末试题及答案.docx
- 建筑构造期末考试题及参考答案.docx
- 建筑构造期末考试题及答案.docx
- 建筑焊工专业技能考试题及答案.docx
- 高考是生物一轮复习 核酸.pptx
- 第13课 现代战争与不同文化的碰撞和交流(课件)高二历史下册课件(选择性必修3).pptx
- 《英语》(新标准)小学修订版三年级下册Unit 1分层教学设计.docx
- 《英语》(新标准)小学修订版三年级下册Unit 6分层教学设计.docx
- 《英语》(新标准)小学修订版三年级下册Unit 2分层教学设计.docx
- 《英语》(新标准)小学修订版三年级下册Unit 3分层教学设计.docx
- 《英语》(新标准)小学修订版三年级下册Unit 5分层教学设计.docx
- 2.3.3 真菌(第二课时)七年级生物上册课件(人教版2024).pptx
- 《英语》(新标准)小学修订版三年级下册Unit 4分层教学设计.docx
- 6.3价值的创造和实现 高中政治课件.pptx
有哪些信誉好的足球投注网站
文档评论(0)