微信小程序随手记录-2021.3.11

1、微信小程序的场景值:作用是得知是以什么方式进入小程序的,比如小微信搜索,好朋友分享,手机长按识别二维码进入...,
通过app中的onLaunch 或onShow方法中可以获取到场景值,从而进行相应的处理

onLaunch: function (options) {

console.log("[onLaunch] 场景值:", options.scene)

},

onShow: function (options) {

console.log("[onShow] 场景值:", options.scene)

}


2.微信尺寸单位:rpx  以iphobe6为基 1rpx=0.5px
3.鼠标点击事件bindtap 简写bind:tap ;视图层可自定义属性,如data-自定义属性,如何获得:bind:tap=“hander”
回调函数hander(event),接收一个对象,对象event.target.dataset对象中包含了自定义属性;
自定义属性只能是小写,大写部分会自动准换为小写,除非连字符写法会转换成驼峰写法,这样大写保持不变;
mark与dataset功能差不多,但是mark会将冒泡中所有的mark属性全部返回回调函数中去

4、catchtap 阻止事件冒泡;所有的mut-bind 互斥的,只会发生一个mut-bind,但完全不影响 bind 和 catch 的绑定效果

5、微信中wxs,意为weixin script ,在里面写方法或变量,通过module.export导出,在其它文件导入是使用相对路径
<wxs src="../../utils/utils.wxs" module="utils"></wxs>
<text>{{utils.formatNumber(fanNum)}}</text>

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

7、组件中wxss不要使用id选择器,子代选择器,标签选择器,推荐使用类选择器

 8、app.js中声明globalData对象存储全局变量,在app.js中使用this.globalData取值
 而在其他文件中需要调用getApp(),得到app的变量与方法
 
 9、微信小程序页面onLoad获取app.js的onLaunch数据(异步获取用户信息),因onLaunch请求异步,程序跑到页面中onLoad获取app数据可能为空
 解决方案地址:https://blog.csdn.net/Simoral/article/details/103649522
 
 10、微信自动更新提示:

autoUpdate: function () {
    var self = this
    // 获取小程序更新机制兼容
    if (wx.canIUse('getUpdateManager')) {
      const updateManager = wx.getUpdateManager()
      //1. 检查小程序是否有新版本发布
      updateManager.onCheckForUpdate(function (res) {
        // 请求完新版本信息的回调
        console.log(res.hasUpdate + '===========res.hasUpdate')
        if (res.hasUpdate) {
          //2. 小程序有新版本,则静默下载新版本,做好更新准备
          updateManager.onUpdateReady(function () {
            updateManager.applyUpdate(); //静默强制更新
          })
          updateManager.onUpdateFailed(function () {
            // 新的版本下载失败
            wx.showModal({
              title: '已经有新版本了哟~',
              content: '新版本已经上线啦~,请您删除当前小程序,重新搜索打开哟~',
            })
          })
        }
      })
    } else {
      // 如果希望用户在最新版本的客户端上体验您的小程序,可以这样子提示
      wx.showModal({
        title: '提示',
        content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'
      })
    }
  },


11、 微信小程序app.json分包:subpackages对象
 为了不限制开发包大小
    整个小程序所有分包大小不超过 8M
  单个分包/主包大小不能超过 2M
程序主包必须要默认启动页面/TabBar 页面,以及一些所有分包都需用到公共资源/JS 脚本
分包看开发自己的配置,但各个分包中不能涉及其他分包的资源引用


12、微信小程序中:wxs与js 的不同
wxs和js都是进行逻辑处理,但是wxs中引入只能引入.wxs文件,而且不存在箭头函数,let,const,new变量用var声明,存在独立性
.js文件支持es6语法;负责更复杂的方法与功能
个人感觉wxs用来做纯数据逻辑控制,只是提交标签解析速度;wxs不涉及app.js的方法或微信api

13、父组件拿到子组件实例,现在子组件中加上id ,然后通过this.selectComponent("#tip")然后再调用子组件的方法

14、微信小程序中应用生命周期,页面生命周期,子组件生命周期,地址:https://blog.csdn.net/weixin_34640046/article/details/112221971

15、setData()中有回调函数

this.setData({
     orderDetail: orderDTO,
     goingBtnDesc: goingBtnDesc,
     countTime: countTime,
     limitAmount: util.isEmpty(orderDTO.limitAmount) ? '0.00' : orderDTO.limitAmount
      }, () => {
        wx.hideLoading();
        if (countTime) {
          this.timeCounter();
        }
 });

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值