

使用全局变量判断用户是否登录
source link: https://felixxiong.github.io/2021/05/08/%E4%BD%BF%E7%94%A8%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E5%88%A4%E6%96%AD%E7%94%A8%E6%88%B7%E6%98%AF%E5%90%A6%E7%99%BB%E5%BD%95/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

使用全局变量判断用户是否登录
判断用户是否登录
在项目中有这样的需求,类似于小鸡辞典小程序的显示用户昵称。
目前使用全局变量来实现,最终会使用其他方式实现。
在这里记录下自己的尝试方案,但目前暂未解决,后续要填补这个坑。
app.js:
App({
onLaunch: function () { }
globalData:{ userInfos:null } /*定义全局变量userInfos,为了不与用户信息重叠,加了s*/
})
在获取用户信息的登录页面(假设login.js):
var app = getApp(); //获取全局app
Page({
data: {
userInfos:'', //定义的全局变量
userInfo:'', //使用新接口获得用户信息的两个方法,此处不展开
hasUserInfo:false,
},
getUserProfile(){
wx.getUserProfile({
desc:'请登录',
success:(res) => {
console.log('获取用户信息成功',res)
let userinfos = res.userInfo //登录需要的用户信息
var globalUserInfos = app.globalData.userInfos //全局变量的用户信息
wx.setStorageSync('userinfos', userinfos)
this.setData({
userInfos:globalUserInfos, //使用globalUserInfos,目的为了用户信息赋值给全局变量
userInfo:userinfos, //登录需要的用户信息
hasUserInfo:true
})
},
fail:(res) => {
console.log('获取用户信息失败',res)
}
})
},
在需要判断用户是否登录的页面(假设commit.js):
var app = getApp(); //获取全局app
Page({
data: {
userInfos:'', //全局变量的用户信息:问题代码处
username:'', //用户名
},
......
onLoad: function (options) { //在onload方法中赋值给全局变量userInfos
this.setData({
userInfos:app.globalData.userInfos
})
},
getUserName(){
this.setData({
username:userInfos.nickName //赋值给用户昵称
})
},
commit(){
if( userInfos = null){ //如果GlobaluserInfo为空,提示需要登录
wx.showModal({
title: '请登录',
content: '请登陆后再发表',
}else{
const db = wx.cloud.database()
db.collection('Sayings').add({
data:{
...
username:GlobaluserInfo //把全局变量赋值给username
}, }
})
}
}
目前报错:userInfos is not defined

Recommend
-
30
之前,我们从C#代码的角度,为大家介绍了CPU耗时和堆内存的知识点,详见文末的知识点汇总。本期,我们将开启对本地资源检测中LuaCheck功能的解读,并结合简单的代码实例来讲解Lua检测中的...
-
8
Android中全局变量与局部变量的使用总结 – Android开发中文站你的位置:Android开发中文站 > Android开发 >
-
9
Java跨类使用ThreadLocal:线程中的全局变量 — 浮云的博客最近由于新增了一个业务场景,导致很多函数的逻辑都需要改变,需要先判断是否属于该业务场景,再做对应的逻辑,原本的打算是在入口函数新增一个变量,然后在每次需要进行逻辑判断时都把flag变量传进去。...
-
19
判断变量是否为空为什么用keccak256的哈希值,而不是直接与空值比较? | 登链社区 | 技术问答 5...
-
4
如何判断一个变量是否被定义 2012-08-21 今天闲来无事,研究Python中,突然有一想法,能否判断一个变量是否被定义,如果被未定义,则给它赋值1,于是尝试: a = a if a is not None else 1 结...
-
6
Page Visibility API 有时候,开发者需要知道,用户正在离开页面。常用的方法是监听下面三个事件。 pagehide beforeunload unload 但...
-
3
三种判断变量是否为整数的方法 2022-08-25 14:48:11 在本文中,我们将讨论三种最常用的方法:Number.isInteger()、检查余数以及利用严格相等运算符和 parseInt,我们还将提供如何使用每种方法的示例。
-
6
WordPress判断用户是否登录的代码 | Lenix Blog is_user_logged_in() 说明 根据当前访问者是否登录返回布尔值true或false。 参数 该函数...
-
23
Python:Flask使用全局变量g传递数据 精选 原创 $ py...
-
9
一文告诉你如何判断Go接口变量是否相等
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK