欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

微信小程序总结

程序员文章站 2022-05-05 22:03:30
...

小程序总结

主要文件:

app.json:必须要有这个文件,如果没有降温u发运行,是配置文件入口和全局配置,包括网络设置、页面注册,以及window背景色、导航条样式、默认标题。
app.js:必须有,若没有就报错,主要用来以后可以在文件中监听小程序的生命周期,声明全局变量。

小程序的原理:

微信小程序采用 JavaScript、WXML、WXSS 三种技术进行开发,本质就是一个单页面应用,所有的页面渲染和事件处理,都在一个页面内进行,但又可以通过微信客户端调用原生的各种接口微信的架构,是数据驱动的架构模式,它的 UI 和数据是分离的,所有的页面更新,都需要通过对数据的更改来实现。
小程序分为两个部分webview和appService,webview主要展示UI,appService处理业务逻辑、数据及接口调用。通过系统层JSBridge实现通信,实现UI渲染、事件处理。

wxss和css的区别:

尺寸单位:rpx是响应式像素,可以根据屏幕的宽度进行相适应,规定屏幕宽度为750rpx。屏幕宽375px,等于有750个物理像素,750rpx=375px=750物理像素。
小程序传递数据的方法:
app.js里定义全局变量globalData,将需要存储的数据放在里面。使用 wx.navigateTo 与 wx.redirectTo 的时候,可以将部分数据放在url里,在新页面onload的时候初始化,navigateto跳转页面时会保留当前页面,redirectto跳转时会关闭当前页面。onload只执行一次。

小程序的生命周期:

onLoad 页面加载时触发。一个页面只会调用一次,可以在 onLoad 的参数中获取打开当前页面路径中的参数
onShow() 页面显示/切入前台时触发
onReady() 页面初次渲染完成时触发。一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互
onHide() 页面隐藏/切入后台时触发。 如 navigateTo 或底部 tab 切换到其他页面,小程序切入后台等
onUnload() 页面卸载时触发。如 redirectTo 或 navigateBack 到其他页面时
提高小程序应用速度的方法:
1、提高页面加载速度
2、用户行为预测
3、减少默认data大小
4、组件化方案

小程序数据请求封装(网络请求):

wx.request({
  url: 'test.php', //仅为示例,并非真实的接口地址
  data: {
     x: '' ,
     y: ''
  },
  header: {
      'content-type': 'application/json' // 默认值
  },
  success: function(res) {
    console.log(res.data)
  }
})

微信小程序有点和缺点:

优点:
即用即走、无需安装、省流量、省安装时间、不占用桌面
依托微信流量,天生推广传播优势
开发成本比app低
缺点:
用户留存,即用即走是优势,也存在一些问题
入口相对传统app要深很多
限制较多,页面大小不能超过2MB,不能打开超过10个层级的页面
小程序关联微信公众号如何确定用户的唯一性:
如果开发者拥有多个移动应用、网站应用、和公众帐号(包括小程序),可通过 unionid 来区分用户的唯一性,因为只要是同一个微信开放平台帐号下的移动应用、网站应用和公众帐号(包括小程序),用户的 unionid 是唯一的。换句话说,同一用户,对同一个微信开放平台下的不同应用,unionid 是相同的

下拉刷新:

· 首先在全局 config 中的 window 配置 enablePullDownRefresh .
· 在 Page 中定义 onPullDownRefresh 钩子函数。到达下拉刷新条件后,该钩子函数执行,发起请求方法。
· 请求返回后,调用 wx.stopPullDownRefresh 停止下拉刷新。
Config
微信小程序总结
page
微信小程序总结

bindtap和catchtap的区别是什么:

相同点:首先他们都是作为点击事件函数,就是点击时触发。在这个作用上他们是一样的,可以不做区分
不同点:他们的不同点主要是bindtap是不会阻止冒泡事件的,catchtap是阻值冒泡的

简述wx.navigateTo(), wx.redirectTo(), wx.switchTab(), wx.navigateBack(), wx.reLaunch()的区别:

wx.navigateTo():保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面
wx.redirectTo():关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面
wx.switchTab():跳转到 abBar 页面,并关闭其他所有非 tabBar 页面
wx.navigateBack()关闭当前页面,返回上一页面或多级页面。可通过 getCurrentPages() 获取当前的页面栈,决定需要返回几层
wx.reLaunch():关闭所有页面,打开到应用内的某个页面