AngularJS移动ui-view中断渲染

时间:2015-10-16 14:18:10

标签: javascript angularjs angular-ui-router jhipster

我正在使用jhipster框架开发angularJS站点。该框架提供了AngularJS + Bootstrap + Spring Boot组合。我一直在尝试用角度材料替换自举,但我遇到了麻烦。

原始index.html设置:

<div ui-view="navbar" ng-cloak=""></div>
<div class="container">
    <div class="well" ui-view="content"></div>
</div>

导航栏和内容ui-view都映射到视图:

$urlRouterProvider.otherwise('/');
$stateProvider.state('site', {
            'abstract': true,
            views: {
                'navbar@': {
                    templateUrl: 'scripts/components/navbar/navbar.html',
                    controller: 'NavbarController'
                }
            },
            resolve: {
                authorize: ['Auth',
                    function (Auth) {
                        return Auth.authorize();
                    }
                ],
                translatePartialLoader: ['$translate', '$translatePartialLoader', function ($translate, $translatePartialLoader) {
                    $translatePartialLoader.addPart('global');
                }]
            }
        });


$stateProvider
            .state('home', {
                parent: 'site',
                url: '/',
                data: {
                    authorities: []
                },
                views: {
                    'content@': {
                        templateUrl: 'scripts/app/main/main.html',
                        controller: 'MainController'
                    }
                },
                resolve: {
                    mainTranslatePartialLoader: ['$translate', '$translatePartialLoader', function ($translate,$translatePartialLoader) {
                        $translatePartialLoader.addPart('main');
                        return $translate.refresh();
                    }]
                }
            });

我想在导航栏视图中渲染我的内容,因为这是角度素材侧面导航组件的工作方式:http://codepen.io/marcysutton/pen/OPbpKm,这就是我的麻烦开始的地方。

如果我将内容ui-view移动到导航栏的正确部分,则无法获取渲染器

new navbar.html:

...
</md-sidenav>
<div layout="column" flex id="content">
    <md-content layout="column" flex class="md-padding">
        <div class="well" ui-view="content"></div>
    </md-content>
</div>
...

我是否需要更改角度代码中的某些内容以支持此行为?提前致谢!注意:原始index.html工作,移动后失败。

1 个答案:

答案 0 :(得分:0)

我通过执行以下操作修复了它:

 views: {
     'content@site': {
     ...