Angularjs 修改JHipster为登录页面生成代码

Angularjs 修改JHipster为登录页面生成代码,angularjs,single-page-application,jhipster,Angularjs,Single Page Application,Jhipster,我使用JHipster生成了一个项目,我想对它做一些修改。我希望第一个页面是登录页面,一个没有页眉、菜单或页脚的简单页面。我看到在生成的代码中,组件是从索引添加的 <page-ribbon></page-ribbon> <div ui-view="navbar" ng-cloak></div> <div class="container"> <div class="well" ui-view="content">

我使用JHipster生成了一个项目,我想对它做一些修改。我希望第一个页面是登录页面,一个没有页眉、菜单或页脚的简单页面。我看到在生成的代码中,组件是从索引添加的

<page-ribbon></page-ribbon>
<div ui-view="navbar" ng-cloak></div>
<div class="container">
    <div class="well" ui-view="content">
        <!-- Angular views -->
    </div>

    <div class="footer" ng-cloak>
        <p data-translate="footer">This is your footer</p>
    </div>
</div>

这是您的页脚

我不知道什么是最好的方式来修改它,以显示登录页面首先是用户没有登录。如果用户已登录,我希望显示应用程序的主页


谢谢。

解决问题的最快方法是打开“src/main/webapp/app/home/home.state.js”并将角色\u USER authority添加到data.authorities,如

$stateProvider.state('home', {
        parent: 'app',
        url: '/',
        data: {
            authorities: ['ROLE_USER']
        },
        views: {
            'content@': {
                templateUrl: 'app/home/home.html',
                controller: 'HomeController',
                controllerAs: 'vm'
            }
        },
        ...
这将自动将您自己路由到“accessdenied”,但会自动打开登录对话框


更好的解决方案是在homeview中添加登录ui(如果未经验证),或者只是将登录组件升级到自己的路径。

谢谢,这有助于我理解项目的结构,但我的问题仍然存在。我想要一个没有导航栏和页脚的登录页面。如果我使用您的方法,它将向我显示一个模式,我不希望在这种情况下,您需要添加一个新的路由“登录”,并在没有用户经过身份验证时强制路由到它。如果可能的话,我将与登录控制器一起使用的新路由(这意味着,它在非模式时工作),否则,复制粘贴或更改该控制器,以便在整个页面控制器上使用。如果你卡住了,我试着用一些示例代码作为答案。我的问题是,我不知道如何只显示没有导航栏和页脚的登录页面,因为它包含在index.html中,就像我在文章中说的那样。我不想删除该代码,因为它对应用程序的其余部分很有用。此外,我还创建了一个新的布局和控制器,该功能现在就可以工作了。您可以使用css组件,这是最重要的,因此它是伪不可见的(这是有漏洞的),或者您可以维护$rootScope变量保持布尔状态,无论用户是否在登录路径上,并使用ng if切换导航栏和页脚。我还想看看是否有可能将您的登录路由到顶部ui视图,在那里加载所有其他内容…感谢您的建议。我通过在根范围中使用一个从auth服务设置的变量解决了这个问题。如果你想别的办法,请告诉我。谢谢