0xfabxa20页面微信小程序
的重要性 汇海页面是APP中非常常见的要求。为什么它对小程序很重要?首先,我将描述在开发过程中遇到的一些问题以及解决它们的步骤。最后,为什么我要添加汇海页面,你会在阅读之后理解它们。
小程序的主页需要显示用户关心的单元信息。这意味着一旦我打开小程序,我必须首先执行登录逻辑。只有在登录后才能获得用户关注的单元信息。
自动登录小程序汇海,当前未获取用户信息,因此无需用户授权。此逻辑放在根目录中的app.js的onLaunch方法中。 onLaunch方法只要执行汇海小程序即可执行。
这样做之后,我发现了一个非常严重的问题。应用程序的onLaunch方法实际上将在小程序汇海执行,但第一页将在app.json文件的页面中同时执行。它没有被阻止。将导致的一个问题是主页获得关注信息并且逻辑尚未完成,并且未获得正确的数据。
然后将登录逻辑放入主页的onLoad方法,然后在登录成功后获取感兴趣的数据,以便解决上述问题。
后面还有另一个要求,即共享功能,共享页面中也需要用户信息。这很尴尬,输入了共享页面。当用户输入时,仍然输入页面,并且不执行主页的逻辑。无法获取用户信息。
想想以后,或者添加一个汇海页面进行传输,登录的逻辑仍然放在app.js中,只要小程序汇海可以执行,无论是第一次进入还是通过共享页面,你可以自动登录。
问题是如何实现阻塞功能,即登录后跳转到其他页面,想法是使用定时器检测登录状态,然后在成功后跳转。
共享也一样,共享地址不再是这个页面的地址,而是汇海页面的地址,带有参数,这个参数是这个页面的地址,当用户点击共享小程序进入时,它首先进入汇海页面,在汇海页面中获取参数,等待登录逻辑完成,然后根据参数跳转到共享页面。
汇海页面代码:
onLoad: function(e){
Var url='/pages/index/index'
//共享页面参数解码
如果(e.page!=undefined&& e.page!=''){
Url=decodeURIComponent(e.page)
}
Var count=0;
Var inter=setInterval(()=> {
计数++;
如果(计数> 1000){
clearInterval(帧间);
wx.showToast({
标题:'网络异常,请重启小程序',
图标:'无',
持续时间: 2000
})
返回;
}
Var token=wx.getStorageSync('login_token');
如果(令牌!=null&& token!=''){
clearInterval(帧间);
//跳转到工具栏
if(url=='/pages/index/index'|| url=='/pages/city/cityAll/cityAll'){
wx.switchTab({
网址:网址
})
} else {
//跳转到正常页面
wx.navigateTo({
网址:网址,
})
}
}
},10);
}
当检查超过10秒时,登录信息将不可用,并将给出提示。将添加一个页面以允许用户手动授权登录。
这种方式几乎无法满足需求,但这不是最好的方式。这个问题一目了然。如果添加汇海,则表示所有条目都变为汇海页,没有必要通过时序检查,直接将登录逻辑放入汇海页面执行,在跳转逻辑成功后,这种方式是最好的,我不会发布具体的代码,我们理解。
特定共享页面代码:
onShareAppMessage: function(){
设那个=这个
Var page=encodeURIComponent('/pages/district/districtDetail/districtDetail?city='+ that.data.city +'& region='+ that.data.region +'& districtName='+ that.data.districtName +'& estateType='+ that.data.estateType +'& isshare=1')
返回{
标题:'单元格详细信息',
路径:'/pages/startPage/startPage?page='+ page
}
}
重点关注isshare=1这个参数,当直接打开分享的页面时,用户点击左上角的返回按钮,基于现有的逻辑会退回到汇海页,因为是从汇海页中转过来的,这是有问题的,要么就去掉这个返回按钮,要么就返回到首页。
所以对于分享的页面带了一个参数识别,当是从分享页面进来的时候返回就到首页面具体逻辑在页面的onunload的函数中,在页面卸载的时候进行跳转:
if(this.data.isshare==1){
wx.switchTab({
url:'/pages/index/index'
})
}
以上就是汇海页的作用以及需要汇海页的一些背景,第一次开发小程序,总会碰到很多问题。
总结+分享=积累。
XX“沈阳软件公司”的新闻页面文章、图片、音频、视频等稿件均为自媒体人、第三方机构发布或转载。如稿件涉及版权等问题,请与
我们联系删除或处理,客服QQ:55506560,稿件内容仅为传递更多信息之目的,不代表本网观点,亦不代表本网站赞同
其观点或证实其内容的真实性。
热门文章
使用“扫一扫”即可将网页分享至朋友圈。
上一篇:
微信小程序websocketchat
下一篇:很抱歉没有了