Angular JS多层次路由

时间:2019-01-29 05:42:59

标签: javascript angularjs angularjs-routing

我有一个如下结构的应用程序

Index.html

在所有app.js内添加了具有所有路由的ng-viewindex.html

我还有另一个模板,该模板在此ng-view的连续登录中位于home.html

我还可以在ng-view里面有一个home.html吗?并单击主页链接内的任何菜单并加载到该ng-view上?

我在下面添加我的路由详细信息

.config([''$ routeProvider',函数($ routeProvider){

$routeProvider
    .when('/login', {
        controller: 'LoginController',
        templateUrl: 'modules/authentication/views/login.html'
    })

    .when('/home', {
        controller: 'HomeController',
        templateUrl: 'modules/home/views/home.html'
    })

    .otherwise({ redirectTo: '/login' });
}])

我可以添加一个新的路由并在home.html内代替index.html加载一个tempale和控制器吗?

1 个答案:

答案 0 :(得分:0)

如果我正确理解,您希望在ng-view内添加ng-view。我想你不能那样做。但是解决方案是使用参数reloadOnSearch,您可以将其设置为false,因此每次重新加载更改页面的路由时,都不会重新加载以前加载的html结构。

-md XXX

但是要使其以这种方式工作,您必须在所需的每个页面中键入固定的html结构。一种添加方法是将“包括”添加到您的主页,并通过范围变量设置视图页面。

.when('/home', {
    controller: 'HomeController',
    templateUrl: 'modules/home/views/home.html',
    reloadOnSearch: false
})