zoukankan      html  css  js  c++  java
  • 小程序启动时加载顺序,小程序初始化,页面初始化

     启动小程序后,首先会执行App({}),中的声明周期函数。(注册小程序示例)

    onLauch函数,监听小程序的启动后的函数(监听小程序初始化),可以在这个函数中 进行网路请求,或者获取用户信息。

    和App相关的生命周期函数文档:https://developers.weixin.qq.com/miniprogram/dev/reference/api/App.html

     wx.getUserInfo({//获取用户信息
    
      success:function(res){
    
        console.log(res)
      }
    
    })

     小程序后台运行后,会存活两个小时,如果在两个小时内再次进入小程序,不会初始化小程序。

     onShow:小程序在前台显示

    onHide(options):小程序后台运行    options中就有小程序的打开场景

    onError:小程序中,程序发生错误时会执行

    补充:一般在App()注册小程序时,我们会获取用户信息,判断进入小程序的场景

    都有哪些小程序进入场景呢?分享,搜索?等等,文档链接:https://developers.weixin.qq.com/miniprogram/dev/reference/scene-list.html

     wx.getUserInfo()在将来有可能废弃,那么补救方案是什么呢?通过button

    <button size="mini" open-type="getUserInfo" bindgetUserInfo="handleGetUserInfo">获取用户信息</button>

    methods:

    handleGetUserInfo(event){
      event.detail.userInfo
    }

     另外用open-data组件可以直接展示用户信息,只是展示,不能获取

    在文档的  组件  开放能力里可以查看该组件用法

    在App()中是可以定义一些全局的数据的

    globalData:{

      name:"哈哈"

    }

    在小程序所有页面都是可以取到全局数据的

    const  app=get App();//获取小程序产生的示例对象

    console.log(app.globalData.name);

    上面说的是小程序初始化时调用App()

    那么每个页面也需要注册,页面注册是调用Page方法

     那么在页面注册时,Page方法中我们会做什么事情呢?

    1、监听页面生命周期,请求网络数据,初始化数据

    https://developers.weixin.qq.com/miniprogram/dev/reference/api/Page.html

     几个常用的生命周期函数:onLoad:页面加载;onShow:页面显示;onHide:页面隐藏;onUnload:页面卸载(页面发生跳转);onReady:页面第一次渲染完成

     onLoad页面加载周期函数通常是发起服务器请求:

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

    上面的域名包括端口,需要在 微信管理平台上配置上才能正常发起请求;

    当然,我们开发时,可以在微信开发工具的 详情 按钮模块里,将校验合法域名 取消勾选,这样我们在开发时就先不用设置合法域名了。

     可以在Page中监听 页面的点击事件、上拉刷新、下拉加载等等

     另外,在页面中用箭头函数的话,里面用this,指向的是Page这个对象,如果用function定义的函数,this指向undefined,我们可以早onLoad生命周期函数中定义一个常量

    _this=this;然后在其它方法内就可以用_this来使用this对象了,注意这是es6箭头函数和正常function函数的一个区别,箭头函数没有this,会一级一级往上找。

  • 相关阅读:
    string与stringbuilder的区别
    Web负载均衡的几种实现方式
    JS 禁用鼠标右键
    JS中的!=、== 、!==、===的用法和区别。
    SQL Server Change Tracking
    关于更新发布CSS和JS文件的缓存问题
    Authorization in Cloud Applications using AD Groups
    英语学习[ZZ]
    我奋斗了18年,不是为了和你一起喝咖啡
    我奋斗了18年才和你坐在一起喝咖啡
  • 原文地址:https://www.cnblogs.com/fqh123/p/12324723.html
Copyright © 2011-2022 走看看