鸿蒙项目云捐助第三十讲云捐助项目云前台登录的角色使用
鸿蒙项目云捐助第三十讲云捐助项目云前台登录的角色使用
在前一讲中已实现过BackendSideBar组件做为后台管理的界面。这时可以修改前台的登录页面使用户登录不同的角色进入到不同的页面。也就是普通用户进入到Index的组件页面,管理员进入到BackendSideBar的后台管理组件页面。
一、云前台登录的角色不同的控制
在登录页面逻辑中,通过角色的不同跳转到不同的页面,这里需要添加一个全局变量identity表示认证的角色,代码如下图所示。

引入全局变量后,在用户实现登录时必须指定这个身份的全局变量,这里在界面中引入Select选择框来控制identity的角色选择。代码如下所示。

在Select组件中传入参数是一个数组,数组中包括两个角色的json数据,每个json数据使用value作为键,后面的内容做为值,这里有两个角色,就有两个键是value的json数据,其值分别为“普通用户”和“管理员”两项,在Select执行onSelect操作时,将全局变量的this.identify设置为onSelect操作后的参数就可以。
这时在登录逻辑中,可以在数据库请求时添加管理员和普通用户的条件,也就是在查询数据库用户和密码时再加上identity的身份认证。代码如下图所示。

通过带identity的身份认证查询结果,如果结果存在就存在这个身份的用户,如果结果不存在,就会返回错误信息,这里修改错误信息的提示,如下图所示。

登陆页面处理结束后,需要在注册页面也需要添加identity的全局变量。

身份全局变量添加后,还需要在界面布局中使用Select下拉选择框来初始化选择的内容,普通用户和管理员,这里的代码内容和登录的处理是一致的。代码如下图所示。

接下来在注册添加用户时也需要添加身份验证的内容。如下图所示。

这里在注册时不是只有username,password,sex外,还有identify的身份认证项。
代码部分处理结束后,还需要远程的华为云数据库中有相关的身份认证字段,这里登录华为云数据库,修改之前建立的myuser数据类型,如下图所示。

这里点击“修改”后,在弹出的界面中添加identity的字段内容,如下图所示。

添加identity的字段后,接下来“下一步”的操作都跟之前设置myuser数据类型的选择方法是一样的。
结构修改成功后,可以修改已有数据中的某一项,其identity的值为1,如下图所示。

这里修改555用户的identity的值为1。表明555的用户是一个管理员。
所有关于华为云数据库相关内容修改成功后,需要导出myuser结构的js和json文件格式,如下图导出文件所示。

导出user.js和user.json后,分别放在项目中不同的文件夹中,user.js放在项目的model中,user.json放在项目的rawfile中,如下图所示。

这样,模拟器运行项目后,登录和注册就会有identity字段的检验,在登陆页面检验成功才可以登陆,在注册页面检验成功才可以注册。
后续还会对注册登陆的功能做页面跳转的修改,也会带来华为云不同操作的精彩,欢迎关注。