2013-04-06 55 views
-1

我不确定我是否可以这样做,或者有更好的方法。我需要有人来指导我。AngularJS如何将数据从一个控制器传递到不同的指令

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

  • directiveVideo显示视频
  • directivePhoto显示照片

然后,我有一个控制器。这个控制器请求两个不同的数据,视频和照片。 我的问题是,我怎么能通过视频数据显示在指令视频和照片数据到 directivePhoto

回答

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> 
+0

对不起,我的问题,因为我还没有尝试它自己,所以我很模糊。我尝试后会再次询问或更新。 – vzhen 2013-04-07 12:35:03

相关问题