0

我试图将一个视图移动到另一个按钮上点击>我可以将一个视图移动到第二个视图。但移动时,它将从右向左开始滑动。我需要停止滑动。意味着我需要学习使用动画将各个视图移动到另一个视图的各种方式(从左到右或从上到下或者没有动画或从下往上)。如何在离子状态下移动一个状态到另一个状态时去除滑动效果?

这里检查我的代码
http://goo.gl/Q2k6mf

点击预览按钮。而且类型“ABW”,并从服务器选择“ABW”行。它的下载数据之后,它移动到第二视图滑动为什么?我需要停止滑动。

其次 我正在第一个控制器中下载数据。有没有更好的方法来命中服务器或调用webservice之前,转移到第二个视图?

$scope.rowclick=function(station){ 
    $scope.SEARCH.stationCode=station.stationCode; 
    $scope.SEARCH.selected = true; 


      $ionicLoading.show(); 
      $http.get("http://caht.firstrail.com/FGRailApps/jservices/rest/a/departure?crsCode="+ $scope.SEARCH.stationCode).then(function(data){ 
       $ionicLoading.hide(); 
       $state.go('departuredashboard') 
       console.log(data); 
      },function(error){ 
       $ionicLoading.hide(); 
       alert("error"+error); 
      }) 
    } 

其实我需要第二个视图的数据? 这里是代码 https://dl.dropbox.com/s/l2dtrxmnsurccxt/www.zip?dl=0

+0

有太多的问题 – cor

+0

和你提供的代码,给出了一个错误。 –

+0

nav-transition =“none”,将此添加到您的中,并查看它是否有效。 –

回答

1

我不知道你为什么要删除该动画,它是如此的甜蜜,但在这里你走了。

app.config(function($stateProvider, $urlRouterProvider,$ionicConfigProvider){ 
    $ionicConfigProvider.views.transition('none') 
      // rest of the config  
}) 

编辑:对于你的第二个问题:这里是一个代码段为如何使用UI路由器

.state('stateName',{ 
 
url:'/SomeUrl',   
 
resolve: { 
 
     resolvedData: function ($http) { 
 
     var result = $http.get(yourUrlHere).success(function (data) { 
 
         return data; 
 
         }).error(function (err) { 
 
         return err; 
 
         }); 
 
         return result; 
 
       } 
 
     } 
 
    })

而在你的控制器的决心,注入“resolvedData “

+0

是的...这是甜蜜的,但我只是想知道如何删除。但谢谢你的回答..你可以告诉第二个问题。我需要在移动到第二个视图之前调用webservice。我需要在第二个视图上发送数据。我需要更好的方法我已经编写的一种方式 –

+0

使用ui-router的解析函数。 看看这个:https://github.com/angular-ui/ui-router/wiki#resolve –

0
  1. 要禁用导航转换,请将u SE $ionicConfigProvider

    $ ionicConfigProvider.views.transition在配置盒( '无')

  2. 为了控制用户resolve之前加载数据:

app.config(function($stateProvider, $urlRouterProvider,$ionicConfigProvider) { 
 
    $stateProvider 
 
    .state('index', { 
 
     url: '/', 
 
     templateUrl: 'template1.html' 
 
    }) 
 
    .state('state2', { 
 
     url: '/state2', 
 
     templateUrl: 'template2.html', 
 
     controller: 'ACtrl', 
 
     resolve:{ myData : ['$http',function($http) { 
 
      var ULR ="your URL"; 
 
      return $http.get(URL); 
 
     }]} 
 
    }) 
 
    
 
    });

现在您可以像其他任何其他控制器一样将myData插入第二个控制器中服务。

相关问题