小程序开发总结

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

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

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

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

四、获取小程序码文档: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)处理api

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

clipboard.png

可是收货人的信息是能够在我的中心修改的。缓存

clipboard.png

六、小程序生命周期服务器

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.一、在pageA点击小城序的退出按钮,而且在小程序没有被销毁时再次进入小程序,看到的仍是推出前的pageA。触发的事件以下:
// 退出
pageA: onHide have been invoked
App: onHide have been invoked
// 再次进入
App: onShow have been invoked
pageA: onShow have been invoked

七、用户信息受权弹框的变更
wx.getUserInfo:此接口有调整,使用该接口将再也不出现用户信息受权弹窗。
wx.authorize({scope: "scope.userInfo"}):没法弹出用户信息受权窗口(其余信息受权弹框能够弹出)。
如今都要求使用<button open-type="getUserInfo"></button>引导用户主动进行受权操做。微信

八、小程序自定义组件中没法使用全局样式(app.wxss),因此,若是想在自定义组件中使用app.wxss中的公用样式,能够引用app.wxss(@import "../../app.wxss")微信开发

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

十、onReachBottomDistance设置成负数

十一、安卓手机wx.authorize没法调起地理位置信息弹框

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

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

1四、windowHeight

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

clipboard.png

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

clipboard.png

相关文章
相关标签/搜索