【问题标题】:how to remove back button on button click?如何在单击按钮时删除后退按钮?
【发布时间】:2015-07-26 11:11:20
【问题描述】:

我正在尝试使用 $state.go 函数将一个页面移动到另一个页面。我可以这样做,但是当用户单击按钮时,它会在下一页上创建一个 后退按钮。当用户单击此主屏幕按钮时,我不希望这样。

我将再次解释我在主屏幕上有一个按钮。单击时我转到另一个屏幕,在我移动它后,它会在顶部标题上显示后退按钮。我不想要这个,但在那之后,如果用户点击移动到任何页面,它会显示后退按钮。我不希望第一个屏幕上的导航返回按钮。在那之后,我想要这里是我的代码 (http://plnkr.co/edit/J4XI8hjCgvIUeVV89kYG?p=preview)

<!DOCTYPE html>
<html>

  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width" />
    <title></title>
    <link data-require="ionic@1.0.0-beta.1" data-semver="1.0.0-beta.1" rel="stylesheet" href="http://code.ionicframework.com/1.0.0-beta.1/css/ionic.css" />
    <link rel="stylesheet" href="style.css" />
    <script data-require="ionic@1.0.0-beta.1" data-semver="1.0.0-beta.1" src="http://code.ionicframework.com/1.0.0-beta.1/js/ionic.bundle.js"></script>
    <!-- cordova script (this will be a 404 during development) -->
    <script src="cordova.js"></script>
    <script src="app.js"></script>
    <script src="controllers.js"></script>
  </head>

  <body ng-app="starter">
    <ion-nav-view></ion-nav-view>
  </body>

</html>

.controller('a', function($scope, $stateParams,$state) {

  $scope.moveto=function(){
    alert('--')
    $state.go('app.playlists')

  }

})

【问题讨论】:

    标签: angularjs angularjs-directive angularjs-scope angularjs-ng-repeat ionic-framework


    【解决方案1】:

    在调用$state.go('app.playlists')之前使用ionicHistory

    这样试试

    .controller('a', function($scope, $stateParams,$state,$ionicHistory) {
    
      $scope.moveto=function(){
        alert('--')
        $ionicHistory.nextViewOptions({
        disableBack: true
      });
        $state.go('app.playlists')
    
      }
    
    })
    

    PLUNKR

    【讨论】:

      【解决方案2】:

      使用 hide-back-button 属性

      <ion-view title="Playlists" hide-back-button="{{hideBackButton}}">
      
      .controller('PlaylistsCtrl', function($scope) {
        ...
        $scope.hideBackButton = true;
      })
      

      http://plnkr.co/edit/vIhljr0kdNB8u0rWWwCw?p=preview

      【讨论】: