javascript - 如果未登录则重定向用户(Firebase/Vanila JS)
问题描述
晚安,我需要帮助解决我无法解决的问题,我有一个带有索引、注册和登录页面的网站,我的问题是我希望在用户注销时将他重定向到注册如果没有,页面将被重定向到索引,但是如果不生成无限循环,我将无法执行此操作,有人可以帮我吗?
firebase.auth().onAuthStateChanged(user => {
if (user) {
var uid = user.uid;
console.log("usuario conectado")
} else {
window.location = 'register.html'
}})
解决方案
我认为您应该在进行重定向之前检查用户当前所在的当前位置。
firebase.auth().onAuthStateChanged(user => {
if (user) {
var uid = user.uid;
console.log("usuario conectado")
} else {
if (window.location.pathname === '/login.html') return // user is in login page, skip.
if (window.location.pathname !== '/register.html') {
window.location = 'register.html'
}
}
}
推荐阅读
- linux - Kubernetes 和 Linux 之间的兼容性
- python - 警告:超出磁贴内存限制,使用 ChromeDriver Selenium 渲染长页面时,某些内容可能无法绘制并且无法捕获屏幕截图
- spring-boot - 终止使用 Kafka-Streams 和 MongoDB 的 Spring Boot 应用程序
- c# - 将 LINQ 中的两个列表与重复项进行比较
- typescript - 来自 Ant Design 的“转发”组件以便能够在组件库中使用它们会丢失类型定义
- amazon-web-services - EC2 中的十六进制到文本转换失败
- python - 如何在 Python 中创建字典元组
- wavesplatform - Waves 节点同步非常慢
- android - Android不会自动备份sharedprefs?
- awk - AWK 在条件下使用 gsub