加载中 ...
首页 > 新闻资讯 > 经验心得 正文

0xfabxa20页面微信小程序

2019-07-12 22:33:45 来源:沈阳小程序开发 作者:沈阳软件开发

的重要性 汇海页面是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,稿件内容仅为传递更多信息之目的,不代表本网观点,亦不代表本网站赞同

其观点或证实其内容的真实性。