我在尋找什麼是去了解這一點的最好辦法一些建議:AngularJS - 過濾多個複選框組
我有大約5組的複選框。這個清單應該是品牌,型號,顏色,尺寸等等。當用戶勾選品牌,顏色等時,汽車列表會根據他們的選擇進行更新。
該列表是從對數據庫的調用中生成的,我知道如果列表生成一次的列表可以在前端完全過濾,但數據庫預計會增長到超過10,000行所以這不會很理想。
我最初的想法是在每次勾選複選框並將結果返回到視圖時發佈到數據庫。這適用於一組複選框,但我無法理解如何使用多個複選框組進行操作。
下面是處理,在我的控制功能:
$scope.getSelectedBrands = function() {
$scope.brandsselected = $filter('filter')($scope.brands, {checked: true});
var senddata = $filter('filter')($scope.brands, {checked: true});
$http.post('/brands', senddata).success(function(data, status, response) {
$scope.cars = data;
});
}
我不使用是否對每個複選框組不同但非常相似的功能將使太大的意義認識似乎並沒有很乾。目前,每個複選框組,例如品牌都會有自己的網址發佈到返回結果集。另外,由於任何複選框組中的複選框可能會首先打勾,根據檢查的複選框,初始數據將從不同的函數返回。
有沒有更好的方法來解決這個問題?我還需要允許用戶取消選中複選框並重新填充列表。
希望這是有道理的。
謝謝
也許我對[this]的回答(http://stackoverflow.com/questions/18764853)與你的問題有關 - 檢查第二個問題,使事情變得更加可重用。 –
謝謝,我會看看。我也想我可以從整個窗體中獲取值,並使用該對象,而不是像這裏的文檔那樣:http://docs.angularjs.org/guide/forms – BarryWalsh