angularjs - 在AngularJs中刷新页面还有其他方法吗?
问题描述
我花了 2 天的时间来了解如何管理登录系统正确登录或注销后页面刷新的方式。
问题是:我的登录系统到现在都可以正常工作,但是有一个小问题。问题是当我尝试登录到主页时,我需要在重定向后完全加载我的主页(这就像你在键盘上按 F5 键或单击时刷新页面一样导航的链接),所以当我完成登录会话时返回登录页面。我尝试了一些方法:
在 Home 控制器中初始化页面时放入 reload() 函数,如下所示:
功能 HomeController(UserService, $rootScope,$route,$window) { var vm = this;
vm.user = null; vm.allUsers = []; vm.deleteUser = deleteUser; vm.logout = logout; function loading(){ $state.reload(); } initController(); function initController() { loading(); }
但它结束了一个无限循环
使用 Login Controller:: window.location.href ="" 中的函数,但结果与 : location.path(); 相同。
函数 LoginController($location, AuthenticationService, FlashService,$route) { var vm = this;
vm.login = login; (function initController() { // reset login status AuthenticationService.ClearCredentials(); })(); function login() { vm.dataLoading = true; AuthenticationService.Login(vm.username, vm.password, function (response) { if (response.success) { AuthenticationService.SetCredentials(vm.username, vm.password); $window.location.reload(); //$window.location.href="/"; $location.path('/'); // send to home page } else { FlashService.Error(response.message); vm.dataLoading = false; } }); };
登录控制器中的 reload() 和 window.location.href :
函数 LoginController($location, AuthenticationService, FlashService,$route) { var vm = this;
vm.login = login; (function initController() { // reset login status AuthenticationService.ClearCredentials(); })(); function login() { vm.dataLoading = true; AuthenticationService.Login(vm.username, vm.password, function (response) { if (response.success) { AuthenticationService.SetCredentials(vm.username, vm.password); $window.location.reload(); $window.location.href="/"; //$location.path('/'); // send to home page } else { FlashService.Error(response.message); vm.dataLoading = false; } }); };
但是无论我把这些句子的顺序如何,它都会先加载目的地然后重新加载该页面,所以它加载了两次。
这些尝试似乎都不对,所以我需要你们的一些建议,有没有解决这个问题的方法?谢谢!
解决方案
推荐阅读
- mysql - MySQL的B+树上是否存储空值?
- javascript - Uncaught (in promise) ReferenceError: dispatch is not defined
- java - 无法在 Retrofit 2 中上传图片
- sqlite - 退出(n)sqlite会话的正确方法是什么?
- css - 有没有办法让自定义 CSS 按钮在背景中透明?
- php - 根据登录的帐户使用网站 cookie
- javascript - 每当用户单击标签时,我想 concole.log 记录 h2 标签的文本,当单击另一个 h2 标签时,它应该显示该 h2 标签的文本
- python - 删除s3文件也会删除文件夹python代码
- azure - 使用 Azure AD B2C 中的自定义策略在注册期间验证和验证用户输入数据
- javascript - EJS 使用 d3 图表获取的 json 数据