0
我試圖在angularJS中構建一個包含數千個選項的選擇下拉菜單。視圖正在建立時,應用程序會掛起。有沒有辦法在加載圖像後面隱藏這個下拉菜單,直到選項完成構建?Spinner在等待ng-repeat時
我試圖在angularJS中構建一個包含數千個選項的選擇下拉菜單。視圖正在建立時,應用程序會掛起。有沒有辦法在加載圖像後面隱藏這個下拉菜單,直到選項完成構建?Spinner在等待ng-repeat時
使用NG-斗篷 下面是文檔: https://docs.angularjs.org/api/ng/directive/ngCloak
你可以使用一個簡單的指令,在ng-repeat
結束映射回調。 這裏也是一個相當粗糙的demo。
<h3 ng-repeat="name in names" repeat-end="onEnd()"></h3>
app.controller("MyCtrl", function($scope, $timeout){
$scope.finish = false;
$scope.onEnd = function(){
$timeout(function(){
alert("finish")
$scope.finish = true;
}, 1);
};
});
app.directive("repeatEnd", function(){
return {
restrict: "A",
link: function (scope, element, attrs) {
if (scope.$last) {
scope.$eval(attrs.repeatEnd);
}
}
};
});
這與您的問題略有切線,但是您確定要使用1000個選項的下拉框嗎?根據您的應用程序,將這些細化到不同的組中並動態填充下拉列表可能會更方便用戶。您可能想嘗試異步加載下拉列表的內容。 –
您可以爲您的Angular應用程序使用'cg-busy'。 –