AngularJS:如何从指令数据传递给控制器的功能 [英] AngularJS : How to pass data from directive to controllers function
问题描述
我想从某些指令的数据传递到我的控制器功能 addTrackFromPicker
。
I'm trying to pass some data from directive into a function addTrackFromPicker
in my controller.
$scope.addTrackFromPicker = function (message) {
console.log("addTrackFromPicker", message);
};
下面是我在我的指令
dir.directive('youtubeList', function($http, $timeout, YT_event){
return {
restrict: 'E',
scope: {
search: '=',
dial: '&'
},
templateUrl: 'youtube-list.html',
...
在这里,我想从我的模板调用控制器的功能,并将它传递 item.id. $ T
作为参数:
<div class="media list-group-item" ng-repeat="item in entries">
<a type="button" ng-click="dial(item.id.$t)">
<img ng-src="{{item.media$group.media$thumbnail[0].url}}">
</a>
但我不知道如何将它传递到我的标签
But I don't know how to pass it into my tag
&LT; YouTube的列表搜索=搜索拨号=addTrackFromPicker(???)&GT;&LT; / YouTube的-列表&gt;
我也试过 $ parent.addTrackFromPicker
但它没有工作。
I also tried $parent.addTrackFromPicker
but it didnt work
非常感谢。
推荐答案
为了在你的数据传递从你的指令,你需要做的是这样的:
In order to pass in your data from your directive, you will need to do it like this:
<youtube-list search="search" dial="addTrackFromPicker(data)"></youtube-list>
然后,在你的模板:
Then, in your template:
<div class="media list-group-item" ng-repeat="item in entries">
<a type="button" ng-click="dial({data: item.id.$t})">
<img ng-src="{{item.media$group.media$thumbnail[0].url}}">
</a>
</div>
您可以使用参数名比数据的其他
如果别的东西你的情况更有意义。请参阅范围$ C $ 角的文档C> ,获取有关如何工作的详细信息,
You can use an "argument name" other than data
if something else makes more sense for your situation. See Angular's documentation on scope
for detailed info on how this works.
这篇关于AngularJS:如何从指令数据传递给控制器的功能的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!