一个大表单页面,填了一半因为误点返回或者其他原因,退出了这个页面。
再次进入,上次填写的内容全不见了……
这个问题有没有解决办法?
微信小程序现在给出了答案。
退出页面时,在onSaveExitState回调函数中,可以保存当前页面的状态。
示例代码:
Page({
onLoad: function() {
console.log( this.exitState); // 尝试获得上一次退出前 onSaveExitState 保存的数据
},
onSaveExitState: function() {
var exitState = { myDataField: 'myData' } // 需要保存的数据
return {
data: exitState,
expireTimeStamp: Date.now() + 24 * 60 * 60 * 1000 // 超时时刻
}
}
})
onSaveExitState 的返回值,data是要保存的数据,expireTimeStamp是超时时间(默认一天)
注意:
如果超过 expireTimeStamp ,保存的数据将被丢弃,且冷启动时不遵循 restartStrategy 的配置,而是直接从首页冷启动。
expireTimeStamp 有可能被自动提前,如微信客户端需要清理数据的时候。
在小程序存活期间, onSaveExitState 可能会被多次调用,此时以最后一次的调用结果作为最终结果。
在某些特殊情况下(如微信客户端直接被系统杀死),这个方法将不会被调用,下次冷启动也不遵循 restartStrategy 的配置,而是直接从首页冷启动。
-
aria-component 微信小程序无障碍访问组件aria-component是一个微信小程序无障碍访问组件,满足视障人士对于小程序的访问需求。
-
LivePlayerContext.startCasting 微信小程序投屏接口微信小程序v2.32.0增加了投屏接口LivePlayerContext.startCasting,开始投屏, 拉起半屏搜索设备。仅支持在 tap 事件回调内调用。
-
微信小程序怎么获取不了手机号微信小程序无法获取手机号,可以看看是不是以下情况。
-
微信小程序开源框架市面上有很多优秀的微信小程序开源框架,常见的多半是前端框架,比如:vant-weapp、wux-weapp、Taro等等。
-
微信小程序实时音视频播放组件 live-player微信小程序实时音视频播放组件live-player v2.9.1 起支持同层渲染。
-
插件中发起支付API(微信小程序)wx.requestPluginPaymentwx.requestPluginPayment是微信小程序插件中发起支付API。
暂无评论,抢个沙发...