收藏
回答

小程序离开当前页面提示

框架类型 API/组件名称 终端类型 操作系统 微信版本 基础库版本
小程序 page 客户端 6.6.3.1240 1.9.95


小程序离开当前页面提示:我需要一个页面点返回时不能直接离开,因为有数据存着,需要用户确认才离开。但是没有找到相关方法。求指点。

回答关注问题邀请回答
收藏

10 个回答

  • (Alan林)
    (Alan林)
    04-22

    第1,设立标志,离开本页面时,会弹出对话框,提醒要保存数据。

    //功能:在scroll-view中添加一项。

      //注意:只是在前端添加。还需要点击“提交”按钮,才能提交到数据库。

      tapAddLevel: function () {

        var arr1levelsTmp = this.data.arr1levels

        //1.创建一个对象,添加到数组的后面

        var level = {

          level: 'x',

          pointLow: 0,

          pointHigh: 0,

        }

        //2.新对象push到数组中。

        arr1levelsTmp.push(level)

        //3.更新scroll-view中的数组数据。页面上更新显示。

        this.setData({

          arr1levels: arr1levelsTmp,

          hintStr: '数据未提交' //

        })

        //4.设立未提交标志。如果要退出本页面,就提问。

        wx.enableAlertBeforeUnload({

          message: "您还未提交数据,是否继续退出?",

        })

      },

    第2,例如提交后,清除标志

    //功能:点击页面下方的“提交”按钮,提交表单数据到服务器。

      //注意:提交后,退出本页面时,不需要提醒数据保存的情况

      submitLevel: function (e) {

          wx.showModal({

          title: '确定提交?',

          content: '只有改变了数据\n才需要提交',

          success: res => {

            if (res.confirm{

              wx.request({

                method: 'post',

                url: this.data.urlPre + '/submitLevel',

                data: e.detail.value,

                success: res => {

                  ...

                  })

                  this.setData({

                    ...

                  })

                  //数据已经提交。清除标志。退出本页面时,不会提示。

                  wx.disableAlertBeforeUnload(); 

                }

              })

            }

          }

        })

      },


    04-22
    有用
    回复
  • 乐趣
    乐趣
    2022-12-08

    onLoad(res) {

    wx.enableAlertBeforeUnload({ //开启页面退出时的对话框

    message: "您还未保存信息,是否退出当前页面?",

    success: function(res) {

    // console.log("成功:", res);

    return true

    },

    fail: function(err) {

    // console.log("失败:", err);

    return false

    },

    });

    },

    wx.disableAlertBeforeUnload() ;//关闭小程序页面返回时的对话框,放在保存信息的方法里

    //开启和关闭一般同时使用效果好

    2022-12-08
    有用
    回复
  • K.Mr
    K.Mr
    2022-02-05

    我也遇到了这个问题,你们有解决方案么?

    2022-02-05
    有用
    回复
  • ...
    ...
    2019-06-24

    我也遇到了同样的问题,怎么处理呢

    2019-06-24
    有用
    回复 1
  • L
    L
    2018-03-22

    存储是可以的。但是这个数据有点大估计上百对key-value。一直不断存取感觉太过频繁了

    2018-03-22
    有用
    回复
  • 白山的天很蓝
    白山的天很蓝
    2018-03-22

    但是你为什么不把数据缓存起来呢

    2018-03-22
    有用
    回复
  • 白山的天很蓝
    白山的天很蓝
    2018-03-22

    mark一下感觉自己以后会用dao


    2018-03-22
    有用
    回复
  • L
    L
    2018-03-22

    求大神解答

    2018-03-22
    有用
    回复
  • L
    L
    2018-03-22


    2018-03-22
    有用
    回复 2
    • 地平线
      地平线
      2020-04-11
      请问你解决了吗? 我也正好做到想离开页面 提醒是否离开. 自定义头部就可以提醒是否离开, 但是现在手机很多都是手势离开,返回上一页面,手机的手势里面没有用...
      2020-04-11
      回复
    • 波吉
      波吉
      2021-05-11
      你这已经离开页面才弹出来啊,页面里面的方法已经无法触发了
      2021-05-11
      回复
  • L
    L
    2018-03-22

    不行的,直接退出了。我需要的是用户确认才退出

    2018-03-22
    有用
    回复 3
    • sssssssj
      sssssssj
      2019-11-07
      请问找到解决方法了吗,我也遇到这个问题了
      2019-11-07
      回复
    • 郭郭哒
      郭郭哒
      2019-11-29
      请问这边有比自定义返回按钮更好的方法吗?
      2019-11-29
      回复
    • L
      L
      2022-07-19
      请问有找到解决方法了吗,可以分享一下吗
      2022-07-19
      回复
登录 后发表内容