2016-01-15 70 views
0

我有一个angularjs应用程序,它有app.js(主应用程序启动时的js文件),index.html文件,它像母版页(应用于应用程序中的所有页面)。这index.html是在我的项目/应用程序的根目录。AngularJS多个布局页面

我想用新的主/布局页面(而不是index.html)在应用程序中添加2-3个新页面。我想要创建index2.html将应用于某些页面和index3.html将应用于某些页面。

所有的3个布局index.html,index2.html和index3.html是完全独立的/彼此不同。

我尝试了一切,但新页面始终将index.html作为默认布局。

回答

0

我认为你要找的是Angular UI Router。看看这里:https://github.com/angular-ui/ui-router

你有你的index.html配置是“家”的状态,与其他索引文件嵌套视图。

详情请查看文档,但基本上你设置你的index.html文件:

... 
<body ng-app="app"> 
    <ui-view></ui-view> 
</body> 

,然后在app.js:

angular.module('app', [ui.router]) 
    .config(function($stateProvider, $urlRouterProvider) { 
    $urlRouterProvider.otherwise("/"); 

    $stateProvider 
     .state('home', { 
     url: "/", 
     templateUrl: "partials/index.html" 
     }) 
     .state('index2View', { 
     url: "/index2", 
     templateUrl: "partials/index2.html" 
     }); 
     ... add more states for your views here ... 
    }); 

你可能想看看进入抽象状态,但我不确定你的具体要求是从这个问题。

+0

感谢您的反馈中添加视图。 我以前见过这个代码,但我的要求有点不同。这里视图被添加到body标签中,这意味着和对于所有状态都是相同的。我想与完全不同的布局是完全不同的。 –

+0

啊我明白了。这听起来很棘手(也许不可能?)来拉开客户端。我认为你必须为此使用服务器端重定向。 –

0

您可以使用多个应用程序的多个视图ng-app="what ever your app here"时间内就一定