创新互联百度小程序教程:App

  • App
    • onLogin(Object object)
    • onLaunch(Object object)
    • onShow(Object object)
    • onHide()
    • onError(Object object)
    • onPageNotFound(Object object)

    App

    解释: App 函数用来注册一个智能小程序。接受一个 Object 作为参数,用以指定智能小程序的生命周期函数等。

    成都创新互联公司主要从事成都网站制作、做网站、网页设计、企业做网站、公司建网站等业务。立足成都服务龙湖,10多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108

    注:App 函数必须在 app.js 中被调用一次。该函数在整个小程序中不能被调用多次,否则会出现无法预期的后果。

    Web 态说明

    由于 Web 态框架暂不支持当前是否进入前、后台的状态检测,因此在下列场景中,App.onShow、App.onHide 生命周期无法触发

    • 当 Web 态小程序从后台切换至前台时,如从任务管理器进入、或关闭显示在上层的语音助手等,App.onShow 生命周期无法触发
    • 由于 Web 态框架暂不支持当前是否进入前、后台的状态检测,因此 Web 态小程序暂不支持 App.onHide 生命周期

    参数

    Object object

    属性 类型 默认值 描述 触发时机 Web 态说明
    onLoginFunction生命周期函数 - 监听 Web 态小程序登录成功( Web 态小程序独有)当小程序初次登录成功后,会触发 onLogin (全局只触发一次)仅在 Web 态小程序中有效,百度 App 端内小程序此生命周期不会触发
    onLaunchFunction生命周期函数 - 监听小程序的初始化当小程序初始化完成时,会触发 onLaunch (全局只触发一次)。
    onShowFunction生命周期函数 - 监听小程序的显示当小程序初始化,或从后台进入前台显示,会触发 onShow仅在小程序初始化时触发
    onHideFunction生命周期函数 - 监听小程序的隐藏当小程序从前台进入后台,会触发 onHide暂不支持
    onErrorFunction错误监听函数小程序发生脚本错误,或者 API 调用失败时触发,会带上错误信息
    onPageNotFoundFunction页面不存在监听函数小程序要打开的页面不存在时触发,会带上页面信息回调该函数。
    其他Any开发者可以添加任意的函数或者数据到 Object 参数中,用 this 可以访问

    名词解释:
    前台、后台:当用户点击右上角的关闭,或者按了设备的 Home 键离开智能小程序,智能小程序没有直接销毁,而是进入到了后台;当再次进入智能小程序,又会从后台进入前台。

    注意:
    只有在以下情况小程序才可能会被动销毁,参考运行机制:

    • 进入后台超过 5 分钟;
    • 系统资源占用过高;
    • 打开小程序数量超过系统支持上限(系统按照小程序被打开的先后顺序进行销毁)。

    代码示例

    • JS
     
     
     
    1. // app.js
    2. App({
    3. onLogin(options) {
    4. // 使用 options.code 换取 session_key
    5. // 仅在 Web 态小程序初次登录成功后会被触发
    6. },
    7. onLaunch(options) {
    8. // Do something initial when launch.
    9. },
    10. onShow(options) {
    11. // Do something when show.
    12. },
    13. onHide() {
    14. // Do something when hide.
    15. },
    16. onError(errMsg) {
    17. // 发生错误时,回调此方法并传递错误信息
    18. console.log(errMsg);
    19. },
    20. globalData: 'This is global data'
    21. });

    onLogin(Object object)

    • 使用 onLogin 生命周期的意义:Web 态小程序初次登录成功后开发者能获取登录成功的 code。
    • 添加 onLogin 生命周期的原因:与百度 App 端内小程序登录不同(在小程序内部登录),Web 态的登录需要跳转百度登录页面进行登录,登录成功后自动跳转原页面。该跳转过程会导致 Web 态小程序的原执行上下文状态丢失,从而无法通过 swan.login 的成功回调获取登录成功的 code。因此必须通过 onLogin 生命周期获取该 code。
    字段 类型 说明
    codeString登录成功后的 code,用于换取 session_key

    onLaunch(Object object)

    小程序初始化完成时触发,全局只触发一次。

    字段 类型 说明
    sceneString打开智能小程序的场景值,scene 值统一由百度小程序场景值管理中心在 B 端平台统一配置后下发到宿主(例如百度 App),调起协议中会携带相应入口的 scene 值
    pathString打开小程序的路径
    queryObject打开当前页面路径中的参数
    shareTicketString标记转发对象
    referrerInfoObject从另一个小程序打开该小程序时,返回此字段
    referrerInfo.appIdString来源小程序的 appKey
    referrerInfo.extraDataObject来源小程序传过来的数据

    名词解释:

    • 场景值: 智能小程序被打开时,其来源渠道的标识(例如: 从百度搜索结果打开、从百度信息流打开),开发者可以利用该字段统计小程序在什么场景下被打开,更多场景值;
    • 调起协议: 宿主(例如百度 App)用于识别一个小程序被打开时的初始化信息(例如:小程序的 appKey、path、query 等),由该类信息构成的一个协议。

    onShow(Object object)

    小程序启动,或从后台进入前台显示时触发。也可以使用 swan.onAppShow 绑定监听。

    参数:与 swan.onAppShow 一致

    onHide()

    小程序从前台进入后台时触发。也可以使用 swan.onAppHide 绑定监听。

    onError(Object object)

    小程序发生脚本错误或 API 调用报错时触发。也可以使用 swan.onError 绑定监听。

    参数:与 swan.onError 一致

    onPageNotFound(Object object)

    小程序要打开的页面不存在时触发。也可以使用 swan.onPageNotFound 绑定监听。注意事项请参考 swan.onPageNotFound。

    参数:与 swan.onPageNotFound 一致

    代码示例

    • JS
     
     
     
    1. // app.js
    2. App({
    3. onPageNotFound(res) {
    4. // 如果是 tabbar 页面,请使用 swan.switchTab 进行跳转
    5. swan.redirectTo({
    6. url: 'path/to/otherPage'
    7. });
    8. }
    9. });

    当前题目:创新互联百度小程序教程:App
    转载来源:http://www.shufengxianlan.com/qtweb/news23/217773.html

    网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

    广告

    声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联