-1

我不确定我是否可以这样做或有更好的方法。我需要有人指导我。

我使用指令创建了两个模板(两个指令在同一页面中)。让我们说

  • 用于显示视频的directiveVideo
  • 用于展示照片的directivePhoto

然后我有一个控制器。这个控制器请求两个不同的数据,视频和照片。我的问题是,如何将视频数据传递给在directiveVideo 中显示,将照片数据传递给directivePhoto

4

1 回答 1

2

你的问题非常模糊,所以我会给出同样模糊的答案。如果您想要更具体的内容,您需要编辑您的问题以包含一些代码 - 最好在 Plunker 中。

如果您的控制器声明了两个作用域变量videosphotos,那么您可以简单地将它们作为属性传递给您的指令:

<div photos="photos"></div>
<div videos="videos"></div>

你可以从你的指令中读到这个。假设您有一个隔离范围:

scope: { photos: '=' }

否则:

scope: true,
link: function ( scope, element, attrs ) {
  attrs.$observe( 'photos', function ( val ) {
    $scope.photos = val;
  });
}

您的模板可以访问它,但它需要:

<ul>
  <li ng-repeat="photo in photos"><img ng-src="{{photo.url}}" /></li>
</ul>
于 2013-04-06T19:38:38.183 回答