ng ui-router $state.go()跳转

$state.go这个是ng的路由跳转以下以例子来说明以下:

路由配置

.state('docImg',{  
        url:'/doc-img',  
        templateUrl:'templates/doc-img.html',  
        controller:'docImgCtrl'  
      })  
  
      //  
      .state('egImg',{  
        url:'/eg-img/:flag',  
        templateUrl:'templates/eg-img.html',  
        controller:'egImgCtrl'  
      })  

controller

.controller('docImgCtrl',function($scope,$state){  
  $scope.goEgImg = function(){  //这个是传参数的  
    $state.go("egImg",{flag:2});  
    // window.location.href = "#/eg-img/2";  
  }  
  $scope.goEgImg2 = function(){  //这个是不传参数的  
    $state.go("docImg");  
    // window.location.href = "#/doc-img";  
  }  
}) 


$state.go()函数和window.location.href在使用上还有一点区别的,$state.go()函数里面调用的是路由配置里面的state名称,而window.location.href用的直接是路由url地址,搞清楚这两点使用起来应该就没什么问题了。当然传参的方式也不一样,$state.go()传参是用json的形式传参的,window.location.href的传参是直接拼在地址url后面的






你可能感兴趣的:(随笔笔记)