我创建了plunker来展示我的情景。请看一下。
问题在于,当我点击搜索输入时,我会被重定向到优惠标签。这不应该发生。当我在主页标签中点击搜索输入时,搜索应显示在主页标签内,而不是商品标签。< / p>
如果我点击优惠标签中的搜索输入,搜索应显示在商品标签内,而不是主页标签。
因此导航在我的例子中搞砸了。
标签
<ion-tabs class="tabs-icon-top tabs-color-active-positive">
<ion-tab title="Home" icon-off="ion-ios-home-outline" icon-on="ion-ios-home" ui-sref="app.home">
<ion-nav-view name="tab-home"></ion-nav-view>
</ion-tab>
<ion-tab title="Promoções" icon-off="ion-ios-gear-outline" icon-on="ion-ios-gear" ui-sref="app.offers">
<ion-nav-view name="tab-offers"></ion-nav-view>
</ion-tab>
</ion-tabs>
国
$stateProvider.state('app', {
abstract: true,
templateUrl: 'main.html',
controller: function(){}
});
$stateProvider
.state('app.search', {
url: '/search',
views: {
'tab-home': {
templateUrl: 'search.html',
controller: function($scope, $state){
$scope.current = $state.current;
$scope.$on('$stateChangeSuccess', function(event, toState){
$scope.current = toState;
});
}
},
'tab-offers': {
templateUrl: 'search.html',
controller: function($scope, $state){
$scope.current = $state.current;
$scope.$on('$stateChangeSuccess', function(event, toState){
$scope.current = toState;
});
}
}
}
});
$stateProvider
.state('app.offers', {
url: '/promos',
views: {
'tab-offers': {
templateUrl: 'offers.html',
controller: function($scope, $state){
$scope.current = $state.current;
$scope.$on('$stateChangeSuccess', function(event, toState){
$scope.current = toState;
});
}
}
}
});
$stateProvider
.state('app.home', {
url: '/home',
views: {
'tab-home': {
templateUrl: 'home.html',
controller: function($scope, $state){
$scope.current = $state.current;
$scope.$on('$stateChangeSuccess', function(event, toState){
$scope.current = toState;
});
}
}
}
});
我的目标是:
我该如何做到这一点?
答案 0 :(得分:0)
你真的应该让搜索成为各个标签的子项,以便你可以替换它们