小程序开发总结

1、OpenID: 是使用用户微信号(加上公众号【猜测】)加密后的结果,每个用户对每个公众号有一个唯一的OpenID。一个粉丝关注一个公众号后产生的OpenID对这个公众号来说是唯一的,即使重新关注也不会变。

2、小程序的自定义组件,当只有一个slot的时候,不能指定名字;或者当只有一个slot的时候,指定名字,同时配置options: { multipleSlots: true }

<!-- 组件模板 -->
<view class="wrapper">
  <view>这里是组件的内部节点</view>
  <slot></slot>  // <slot name="test"/> 不能指定名字(name="test")
</view>

3、template 如何引用自定义组件?
在引用template的component或page的配置文件(.json)中引用就可以了

4、获取小程序码文档:https://developers.weixin.qq....
通过接口B生成小程序码。接口B:https://api.weixin.qq.com/wxa...

  wx.scanCode({
    success: ({ path }) => {
     console.log(path)
    }
  })

假如码上所带的信息是pages/home/home?scene=id=299,使用苹果机扫码得到的path是pages/home/home?scene=id%3D299,使用安卓机扫码得到的path是pages/home/home?scene=id=299,所以拿到path需先进行decodeURIComponent(path)处理

5、如果页面A显示的内容是可以在页面B修改的,需要考虑重回到页面A的时候是否需要及时更新内容,如果需要,可以在onShow里获取该内容,如果不需要,就得提供下拉刷新的功能。
e.g. 小店在某个供应商下单,在提交订单页可以看到收货人信息(地址+联系电话+收货地址)

clipboard.png

但是收货人的信息是可以在个人中心修改的。

clipboard.png

6、小程序生命周期

App: onLaunch have been invoked
App: onShow have been invoked

按app.json中pages数组元素的顺序注册页面
Register Page: pages/home/home
Register Page: pages/classify/classify
Register Page: pages/cart/cart
               ......
打开小程序的第一个页面(pages 字段的第一个页面)
On app route: pages/home/home
Update view with init data
pages/home/home: onLoad have been invoked
pages/home/home: onShow have been invoked
pages/home/home: onReady have been invoked

6.1、在pageA点击小城序的退出按钮,并且在小程序没有被销毁时再次进入小程序,看到的还是推出前的pageA。触发的事件如下:
// 退出
pageA: onHide have been invoked
App: onHide have been invoked
// 再次进入
App: onShow have been invoked
pageA: onShow have been invoked

7、用户信息授权弹框的变动
wx.getUserInfo:此接口有调整,使用该接口将不再出现用户信息授权弹窗。
wx.authorize({scope: "scope.userInfo"}):无法弹出用户信息授权窗口(其他信息授权弹框可以弹出)。
现在都要求使用<button open-type="getUserInfo"></button>引导用户主动进行授权操作。

8、小程序自定义组件中无法使用全局样式(app.wxss),所以,如果想在自定义组件中使用app.wxss中的公用样式,可以引用app.wxss(@import "../../app.wxss")

9、删除小程序的授权信息
方式一:发现 -》小程序 -》左滑删除 就可以删掉授权信息
方式二:进入小程序 -》 右上角三个点 -》关于乐小拼(乐小拼是小程序名称) -》右上角三个点 -》设置 -》关掉授权信息。
苹果手机可以使用方式一和方式二。大部分的安卓手机只能使用方式二。

10、onReachBottomDistance设置成负数

11、安卓手机wx.authorize无法调起地理位置信息弹框

12、同一手机/同一微信号,小程序开发版、体验版、线上版共享缓存(数据缓存、授权缓存等)

13、轮播视频和图片的一种解决方案: wechatide://minicode/3GMMQHmX7E13

14、windowHeight

wx.getSystemInfo({
  success: function (res) {
    console.log(res) // 在tabbar页面,res.windowHeight代表的高度是蓝色框,非tabbar页面,res.windowHeight代表的是绿色框
  }
})

clipboard.png

16、请求
微信开发者工具的 【请求】 -》【不校验合法域名、web-view(业务域名)、TLS 版本以及 HTTPS 证书】;如果没有勾选,就需要保证请求的URL在小程序管理后台(设置 -》 开发设置 -》 服务器域名)已经配置好,否则就会报下面的错误。一般在开发阶段,可以不去配置,勾选不校验,上线的时候,去小程序管理后台配置好域名。当用手机预览小程序的时候,打开调试模式,就相当于勾选了【不校验合法域名、web-view(业务域名)、TLS 版本以及 HTTPS 证书】。

clipboard.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值