00:00
好,同学们,我是童阳老师,然后呢,我们就着我们项目来跟大家讲解一下小程序原生开发当中常用的一些跳转方式和一些。传参的方式,首先我们打开ap.js,我们看一下我们业务当中,我们在用户进来的时候,我们会先执行这一个全局的一个启动参数啊,启动参数当中呢,我们主要做一个事情,我们要确保首先UN loging肯定是要执行的,因为这样确保我们后面能得到一些啊,对于用户点击按钮获取用户头像啊这种信息操作当中,所以这一步骤是免不了的,所以我们在用户登录成功之后,我们会做个事情啊,但这个登录指的不是我们的这个应用的登录,而是整个微信小程序对于它官方的流程的登录啊,这里面大家不要误会了,然后呢,在里面登录成功之后呢,我们做个事情,我们会什么请求一个接口,这个接口的主要目的是什么,是来根据我们传递的op ID。来去鉴别这用户是否已经在我们的用户体系里面的了啊,如果用户已经存在的话,我们就不需要跳转到登录界面了,这时候我们直接用调用的接口叫sa storage啊,这是同步方法,我们把用户的信息存储到我们的现在的存储当中啊,存储在哪里看呢?在调试器的下面的这个storage地方会看到一些存储信息啊,当然我们。
01:25
如果用户不存在的话,我们会做的事情,这里看到了第一个调整,叫微信的调整,叫重定向调整。为什么这里要使用重定向跳转呢?同学们,我们想象一下,如果我们的用户没登录,让他知道登录页的话,我们其实上是不太希望他能够什么能够再返回到我们的首页的啊,就说希望还是你老老实实的完成的登录了,你再去到其他的页面流程,所以说我们这里一般用什么用regret啊,但实际上呢,在小程序里面很难完成的屏蔽首页跟其他页面重定向的,为什么?同学们看一下,其实我这个页面跳重定下吗?重新到是到我的登录页。
02:11
但实际上你们看到右上角登页的左上角是不是有一个首页的按钮啊,所以用户点击地方还是会回到首页。看到没有啊,这个情况就决定了我们的项目,其实小程序当中很难做到,他一开始时候一定是会有登录的这一个重定向的,之后没有返回的一个流程吧啊,当然我们这里面还是严格的按照我们业务逻辑做了这样的一个重定向的操作啊,当然我们这里面的目的很简单啦,你们要登录,登录的话还是第一次到我们这边来啊,然后这边的话我做了一个。登录跟注册二合一的接口是用户在登录的时候或者在注册的时候,其实完成的不仅是登录,也同时完成了。注册的流程啊,所以说这个时候呢,我们看一下哈,去到了登录界面啊,打开一下login里面的这个啊页面以及JS部分啊,我们分两个地方来一起查看啊。
03:10
右边的是它的这一个代码部分,而左边是它的这个页面部分。然后我们看一下我们的代码,然后呢,我们在用户啊登录的时候,只实会执行这个函数,而这个函数的最终的结尾的地方,我们看一下在用户登录成功之后啊,这接口返回结果是成功的话,我们会做个事情,我们使用什么跳转,我们使用L去跳转。意味什么?意味着我们的项目会重新运行,并且重新运行之后打开页面去指定这个页面。OK,这个方式是什么?就是让小程序重新。一起。Think。E。指定的页面作为。
04:00
首页啊,这个就是还是我们原来的首页,为什么要re论群呢?同学们,你想一下,我们原来在我们的首页当中已经做了一次判断了,判断它是否已经注册,但如果我们这样子回去的话,我们应该是让整个页面不但刷新,而且还是得确保进来的这边的这个重定向到了登录页之后,回到去的还是我们首页,就哪怕如果说登录流程失败了,那是不是还是回到了注册页面呢?啊,但如果是真的注册成功以及或者登录成功的话,我们重新刷新这个页面之后,在前面的地方就能得到整个用户信息了,而且我们的项目当中,用户的登录实际上是以什么为准的,我们看一下我们服务端代码,服务单代码当中的这一个的check by user,就是我们进来的时候啊,我们进来的这个页面当中,我们执行什么,打开app.j当中,我们先看一下,就我们只判断。
05:01
那用户是否存在,是否要去登录的流程,其实呢,是以这个函数为主。发送一个请求为主,我们看一下哈,在我们的这个请求当中,我们只做了一个事情,我们只拿拿到了吗?拿到的open ID。看到没有,从他的头信当中,我们根据open ID来判断一个用户是否存在,换而言之,其实我们在用户存在的时候,我们已经把整个用户信息都。返回回来了,所以说在我们的业务当中,我们实现的不仅仅是简单的一个登录注册,而且还是我们还是只要他一次注册成功之后,我们这个账号以后登录我们的小程序都是免登录的啦,都是直接可以帮他自动登录的。
我来说两句