我正在实施单页ionic / cordova应用程序并尝试使用离子视图。 我在互联网的每个角落搜索过,尝试了一百万个解决方案,似乎没有人像我一样有同样的问题。 我的问题是:每当我尝试从一个视图切换到另一个视图时,而不是替换旧视图,新视图 正在追加。因此,我有一个页面,其中包含多个视图。
在我的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');
});
任何帮助将不胜感激。
答案 0 :(得分:3)
首先要确保您的项目取决于“ui.router”&#39;模块。在第二次使用$ state.go而不是修改位置只是为了清楚。