AngularJS SPA 使用大型应用程序制作登录服务的最佳方式是什么?
AngularJS SPA What's the best way to make a login service with a large app?
我正在处理一个超过 100 页的项目,我正在使用 AngularJS 和 ui-route 以及 php REST 后端。对于身份验证,我想使用 Json Web Token。
我正在尝试找到制作登录页面的最佳方法,但经过大量谷歌搜索后,我仍然没有找到方法。
我的应用程序只允许登录用户访问它,否则他们应该去登录页面。
我的主要问题是我应该如何组织 index.html 因为登录页面的模板与应用程序的其余部分完全不同。
在 index.html 中,我有很多元素,如页眉和页脚,它们加载到所有页面上,登录页面除外。所以为了实现这一点,我使用了 ng-if={{user.isLoggedIn}},但我认为这不是正确的做法,因为只有一个页面我必须在所有页面上都有这个条件。
另一个想法是使用两个应用程序,这样如果用户没有登录就被重定向到登录应用程序(实际上是重定向,不仅仅是状态的改变,因为它使用了另一个主模板)。
有没有办法让我在 SPA 中保留登录页面,所以我只有一个应用程序?
提前感谢任何有效的回答,我希望我已经尽可能清楚。
使用 UI-Route 查看嵌套视图。您可以在登录时拥有 $state.login 和 $state.dashboard 任何状态,然后可以使用 $state.dashboard.home 等。如果您想将其保留在一个应用程序中,这可能是最简单的解决方案。
https://github.com/angular-ui/ui-router
我正在处理一个超过 100 页的项目,我正在使用 AngularJS 和 ui-route 以及 php REST 后端。对于身份验证,我想使用 Json Web Token。
我正在尝试找到制作登录页面的最佳方法,但经过大量谷歌搜索后,我仍然没有找到方法。
我的应用程序只允许登录用户访问它,否则他们应该去登录页面。
我的主要问题是我应该如何组织 index.html 因为登录页面的模板与应用程序的其余部分完全不同。
在 index.html 中,我有很多元素,如页眉和页脚,它们加载到所有页面上,登录页面除外。所以为了实现这一点,我使用了 ng-if={{user.isLoggedIn}},但我认为这不是正确的做法,因为只有一个页面我必须在所有页面上都有这个条件。
另一个想法是使用两个应用程序,这样如果用户没有登录就被重定向到登录应用程序(实际上是重定向,不仅仅是状态的改变,因为它使用了另一个主模板)。
有没有办法让我在 SPA 中保留登录页面,所以我只有一个应用程序?
提前感谢任何有效的回答,我希望我已经尽可能清楚。
使用 UI-Route 查看嵌套视图。您可以在登录时拥有 $state.login 和 $state.dashboard 任何状态,然后可以使用 $state.dashboard.home 等。如果您想将其保留在一个应用程序中,这可能是最简单的解决方案。 https://github.com/angular-ui/ui-router