2016-04-24 59 views
0

我正在实施单页离子/科尔多瓦应用程序并尝试使用离子视图。 我在互联网的每个角落都搜索过,尝试过一百万个解决方案,没有人像我一样遇到同样的问题。 我的问题是:无论何时我尝试从一个视图切换到另一个视图,而不是替换旧视图,新视图 正在追加。因此,我有一个页面,几个视图混在一起。离子视图不转换

在我的index.html我用这个代码:

<body ng-app="garage"> 
<ion-header-bar class="bar-stable"> 
    ..... 
</ion-header-bar> 

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

<ion-footer-bar class="bar bar-footer" ng-controller="AppCtrl" 
ng-hide="isActive('/home') || isActive('/reg')"> 
    ....... 
</ion-footer-bar> 
</body> 

在我HomeCtrl的代码试图重定向到另一个观点:

$location.path('main'); 

我app.js文件:

angular.module('garage', ['ionic', 'angularGrid', 'ngRoute', 'ngCordova','ui.bootstrap']).run(function($ionicPlatform) { 
$ionicPlatform.ready(function() { 
if(window.cordova && window.cordova.plugins.Keyboard) { 
    cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true); 
    cordova.plugins.Keyboard.disableScroll(true); 
} 
if(window.StatusBar) { 
    StatusBar.styleDefault(); 
} 
}); 
}).config(function($stateProvider, $urlRouterProvider){ 
$stateProvider 
.state('home', { 
    url: '/home', 
    templateUrl: 'partials/home.html', 
    controller: 'HomeCtrl' 
}) 
.state('main', { 
    url:'/main', 
    templateUrl: 'partials/main.html', 
    controller: 'MainCtrl' 
}); 
$urlRouterProvider.otherwise('/home'); 
}); 

任何帮助将不胜感激。

回答

3

首先确保您的项目取决于'ui.router'模块。第二次使用$ state.go而不是修改位置只是为了清楚。

+0

是的,谢谢。这是问题之一。解决问题所需的额外步骤(根据文档)完全是用

替换,并从部分中删除所有标签。 – CannotCode