0
这里是我的代码:角的Javascript find方法
var myApp = angular.module('myApp',[]);
//myApp.directive('myDirective', function() {});
//myApp.factory('myService', function() {});
myApp.controller('MyCtrl', ['$scope', MyCtrl]);
function MyCtrl($scope) {
$scope.name = 'Superhero';
$scope.names = [
{
"name": "AAAAAA",
"down": "False"
},
{
"name": "BBBBBB",
"down": "45%"
},
{
"name": "CCCCC",
"down": "12%"
}
];
$scope.datas = [
{
"data": "AAAAAA/45%"
}
];
$scope.getTheRightData = data => $scope.datas.map(d=>d.data.split('/')[0]).find(d=>d===data);
}
HTML
<div ng-controller="MyCtrl">
<table>
<tbody>
<tr ng-repeat="name in names">
<td>{{name.name}}</td>
<td>{{name.down}}</td>
<td ng-bind="getTheRightData(name.name)"></td>
</tr>
</tbody>
</table>
我该怎么办:从$scope.datas
一个元素将在$scope.names
匹配的元素,但它只能说明当name.name
是一样的。我需要的时候name.name
和name.down
是一样的,这样的事情:<td ng-bind="getTheRightData(name.name,name.down)"></td>
,并在控制器
$scope.getTheRightData = data => $scope.datas.map(d=>d.data.split('/')[0][1]).find(d=>d===data);
}
,但它不工作。 感谢您提出解答和想法!
鉴于这两个数组,你只能期待第一个元素,以显示负载或者是你期待的是,当它有一个匹配第三'td'只填充? –