0
我有一份有收入和成本数据的公司名单。在我的应用程序中,可以显示收入或成本,并且可以通过查询过滤列表。我的一个Angular模型可以看另一个吗?
在我的控制,我有以下两只手表:
$scope.$watch('query', function(q) {
$scope.filteredCompanies = $scope.companies
.filter(function(c) { return q ? c.name.toLowerCase().indexOf(q.toLowerCase()) > -1 : true; });
$scope.chartData = {
name: 'companies',
children: $scope.filteredCompanies.map(function(c) {
return {name: c.name, size: c[$scope.selectedItem]};
})
};
});
$scope.$watch('selectedItem', function(i) {
$scope.chartData = {
name: 'companies',
children: $scope.filteredCompanies.map(function(c) {
return {name: c.name, size: c[i]};
})
};
});
我的问题是,我可以告诉chartData
观看selectedItem
和filteredCompanies
,而不是query
?我试过如下:
$scope.$watch('[filteredCompanies, selectedItem]', function(arr) {
$scope.chartData = {
name: 'companies',
children: arr[0].map(function(c) {
return {name: c.name, size: c[arr[1]]};
})
};
});
,但得到的10 digests iterations reached
错误。
'watchCollection'是它,谢谢队友! –
虽然我有你 - 有没有更多的说明性的方式来说'chartData'依赖于'filteredCompanies'和'selectedItem',或者这是我应该做这种事情的方式吗? –
它真的很难推断你想要做什么...我想我需要知道什么是selectedIndex,以及如何使用chartData.children .... – Nix