如何在不同的状态下重用ui-router状态?

时间:2016-01-13 16:15:04

标签: angularjs angular-ui-router

我有一个ui-router状态,用于在叠加层中显示有关电影的一些信息。它显示的数据始终相同,收到的数据也始终相同。但我在我的ui-router控制器中多次使用该状态,但具有不同的状态参数。

我有4个州,我称之为trailer州,

  • home.container-big.trailer
  • home.suggestions.container-big.trailer
  • friendprofile.container-big.trailer
  • home.activities.movi​​e-info.trailer

这是我称之为trailer状态的4种状态。

因此,对于每次点击,我都有不同的状态,但除了州名之外的所有内容都不同。

所以我在想这个,

我创建了一个stateProvider

$stateProvider
  .state('trailer',{
    params: {
      trailer_link: null
    },
    url: '',
    views: {
      "youtube_trailer":{
        templateUrl: '../assets/angular-app/templates/_container-trailer.html',
        controller: function($scope, $stateParams, $state) {
          $scope.trailer_link = $stateParams.trailer_link;
        }
      }
    }
  })

我想在home.container-big状态内调用它,就像这样,

%a{"ui-sref" => ".trailer({trailer_link: '{{ trailer.link }}'})"} Trailer {{$index+1}}

点击会产生此错误

  

无法从州'home.container-big'

解析'.trailer'

哪个有所作为。所以我想我需要将点击中的当前状态传递给ui-state的名称。这可能吗?或者是否有另一种方法可以在不同的状态下重用相同的状态?

0 个答案:

没有答案