我使用 ui bootraps Tab 遇到了一个奇怪的情况,即我无法正确显示完整内容,因此无法访问对象属性。
Controller fixtureLiveFormation:
$scope.statsTabs = [
{ heading: 'Team Stats', route: 'livematch.teamstats', template: '/App/Main/views/dulieu1trandau/report_teamstats.html', active: true },
{ heading: 'Player Stats', route: 'livematch.playerstats', template: '/App/Main/views/dulieu1trandau/report_playerstats.html' }
];
$scope.changeTab = function (route) {
switch (route) {
case 'livematch.teamstats':
break;
case 'livematch.playerstats':
dataService.getleagueplayerstats($scope.pagingInfo).then(function (data) {
$scope.playerStats = _.filter(data.results, function (item) { return item.PlayerId == 90 });
});
break;
<tabset>
查看:
<section ng-controller="fixtureLiveFormation">
<tab ng-repeat="t in statsTabs" heading="{{t.heading}}" active="t.active" disabled="t.disabled" ng-click="changeTab(t.route)">
<div ng-include="t.template"></div>
</tab>
</tabset>
</section>
在report_playerstats.html
上 <div class="table-responsive">
{{playerStats.Name}} => show nothing but
{{playerStats}} -> show
[{"PlayerId":90,"TeamOwnerId":4,"Name":"Aaron Ramsey","Team":"Arsenal"...}]
</div>
为什么会这样,请给我一些建议。
感谢。
答案 0 :(得分:0)
我相信这是因为你的_.filter()
方法返回了一系列玩家,而不是一个玩家。只需修改您的代码如下:
...
$scope.playerStats = _.filter(data.results, function (item) { return item.PlayerId == 90 })[0];
...
您可以添加一些过滤数组包含项目的检查。