离子 - 同一页面中的多个视图

时间:2015-11-12 17:15:46

标签: angularjs ionic-framework ionic

我是Ionic中的一个菜鸟,我需要帮助/指导来构建听起来容易的东西。 我希望有一个由多个内容组成的单个页面,其想法是在同一页面中有多个视图,每个视图都链接到一个特定的控制器。

这是我的代码:

index.html内容:

   <ion-pane>
     <ion-nav-view></ion-nav-view>

     <ion-view ng-controller="FirstController">
       <ion-content>
       </ion-content>
     </ion-view>

     <ion-view ng-controller="ScdController">
       <ion-content>
       </ion-content>
     </ion-view>
  </ion-pane>

在我的app.js中:

 angular.module('app', [])
 .controller('FirstController', function($scope) {
 })

 .controller('ScdController', function($scope) {
 });

在我的config.routes.js中:

angular.module('app')
.config(configure);

function configure($stateProvider){
  $stateProvider
    .state('first', {
      url: '/',
      templateUrl: 'templates/first.html',
      controller: 'FirstController'
    })
   .state('second', {
      url: '/',
      templateUrl: 'templates/second.html',
      controller: 'ScdController'
   });
 }

模板非常简单:

first.html:

<div>first</div>

second.html:

<div>Second</div>

现在没有显示任何内容。

你们有什么想法?

感谢您的帮助!

1 个答案:

答案 0 :(得分:4)

您的要求是多个命名视图。 以下文档对于在单个页面中实现多个视图很有用 https://github.com/angular-ui/ui-router/wiki/Multiple-Named-Views

示例代码:

HTML:

<ion-view title="">
   <ion-content scroll="true">
     <div ui-view="first"></div>
     <div ui-view="second"></div>
   </ion-content>
</ion-view>

JS:

angular.module('app')
 .config(function($stateProvider) {
   $stateProvider
    .state({
       name : 'multiple-views'
       views: {
        'first': {
           url: '/',
           templateUrl: 'templates/first.html',
           controller: 'FirstController'
         },
        'second': {
           url: '/',
           templateUrl: 'templates/second.html',
           controller: 'ScdController'
         }
       }
    });

工作示例链接:http://plnkr.co/edit/kZZ4KikwLITOxR5IGltr?p=preview