以角度获取元素的绑定值

Mal*_*lki 7 javascript angularjs

说我在一个ng-repeat条款中有这个div :

<div ng-repeat="item in list" class="myDiv" ng-click="doStuff(item)">
    {{item.title}}
</div>
Run Code Online (Sandbox Code Playgroud)

它基于这个模型:

$scope.list = [
    { 'title': 'Item 1', 'someData': 'lalala' },
    { 'title': 'Item 2', 'someData': '666' },
    { 'title': 'Item 3', 'someData': 'qwerty' }
  ];
Run Code Online (Sandbox Code Playgroud)

然后我最终得到3个重复的div.
现在我有一个分析页面的外部脚本,我想提取元素的数据.
因此,例如,如果我选择的第一个div var div1 = $('div.myDiv:first')我能得到的属性ng-click,并ng-repeat从它.我也可以angular.element(div1).data('$binding')用来获得绑定{{item.title}}.
但我真正想要的是这个特殊div的单个项目数据:即我想编写一个getItemData(element)可以获取div1和返回的函数{ 'title': 'Item 1', 'someData': 'lalala' }.

如何才能做到这一点?
请注意,我需要一个既能用于转发器绑定又能用于常规绑定的解决方案.我基本上需要知道绑定到每个元素的实际数据.

dfs*_*fsq 10

您可以使用以下angular.element.scope方法访问元素数据对象:

var div1 = $('div.myDiv:first');
var dataItem = angular.element(div1).scope().item;
Run Code Online (Sandbox Code Playgroud)

演示: http ://plnkr.co/edit/MzQRjdgqIpbe9LGrwMDZ?p = preview