Я делаю мой проект в angularjs как я могу добавить один общий загрузчик или прогресс бар для всего проекта с помощью CSS вместо вызова показать/скрыть блок функции для каждого класса div.как я могу добавить один общий загрузчик или прогресс бар для всего проекта
ответ
Для этого вам нужно написать перехватчик. Чтобы узнать о перехватчике, обратитесь: https://docs.angularjs.org/api/ng/service/ $ http
Но кто-то уже выполнил все работы, поэтому зачем изобретать колесо! http://chieffancypants.github.io/angular-loading-bar/
Пока вы не получите ответ вы можете поставить ожидания диалога .. после получения ответа вы можете скрыть диалог .. Вот ссылка простого диалога с помощью JQuery waitingDialog
И этот диалог может лучше всего использовать с угловой, и вы можете изменить его в соответствии с вашим требованием так удачи ..
ли это что-то вроде этого
angular.module('app').factory('httpInterceptor', ['$q', '$rootScope',
function ($q, $rootScope) {
var loadingCount = 0;
return {
request: function (config) {
if(++loadingCount === 1) $rootScope.$broadcast('loading:progress');
return config || $q.when(config);
},
response: function (response) {
if(--loadingCount === 0) $rootScope.$broadcast('loading:finish');
return response || $q.when(response);
},
responseError: function (response) {
if(--loadingCount === 0) $rootScope.$broadcast('loading:finish');
return $q.reject(response);
}
};
}
]).config(['$httpProvider', function ($httpProvider) {
$httpProvider.interceptors.push('httpInterceptor');
}]);
Затем используйте событие, связанное с $rootScope
в любом месте (предпочтительнее использовать в директиве или запустить блок app.js):
$rootScope.$on('loading:progress', function(){
// show loading gif
});
$rootScope.$on('loading:finish', function(){
// hide loading gif
});
Вы можете прочитать об этом здесь codingsmackdown
Это не сработает для кучи контроллеров. Мне нужен загрузчик, который нужно автоматически вызывать, когда возникают HTTP-запросы, потому что я не хочу писать waitDialog для каждого контроллера отдельно. – Lakshman
вы можете позвонить этому, когда вы позвоните в службу поддержки, и в ответ вы можете скрыть его. Меня устраивает. Можете ли вы сказать мне, где именно он не работает для вас? – Rakeschand
В нашем проекте у меня есть почти 50 контроллеров, и каждый контроллер имеет 10 служебных вызовов, если мне нравится, поскольку я предложил мне скрывать/просматривать windowDialog для каждого вызова службы, так что это не очень хороший подход.Мне нужно решение, например, когда HTTP-запрос поднял windowDialog, должен быть видимым, и после получения ответа он должен быть скрыт для всех контроллеров – Lakshman
Вы можете использовать угловую загрузку -bar http://chieffancypants.github.io/angular-loading-bar/#
Это лучший индикатор прогресса, работающий в фоновом режиме.
Вот документация http://angular-js.in/loading-bar/
Также демка доступна там.
Чтобы изменить цвет бара использования загрузки CSS
#loading-bar .bar {
background-color: #2CA01C;
}
- 1. VSTO или прогресс бар
- 2. Установить прогресс прогресс бар
- 3. Прогресс бар с HttpClient
- 4. Добавить текст в прогресс бар
- 5. Я хочу контролировать прогресс бар
- 6. SeekBar или прогресс бар с несколькими цветами
- 7. Прогресс бар для загрузки HttpClient
- 8. Еще один простой JQuery прогресс бар вопрос
- 9. Как я могу показать изображение как прогресс бар в андроиде
- 10. Бар Прогресс в Бар Здоровье
- 11. Silverlight прогресс бар стандартного
- 12. Прогресс бар для PHP загрузить
- 13. добавив прогресс бар
- 14. Печать Прогресс Бар для Apt
- 15. HTML5 прогресс холст бар
- 16. Прогресс бар ListView tiem Android
- 17. PHP Прогресс бар
- 18. Процент прогресс бар самозагрузки
- 19. Javascript основан прогресс бар
- 20. Бар Прогресс Анимация
- 21. прогресс бар в asp.net
- 22. Как я могу добавить загрузчик в webpack?
- 23. Прогресс бар для AsyncTask скачивания
- 24. файла прогресс загрузки бар
- 25. Прогресс бар в МОФ
- 26. Как дать пользователю прогресс бар
- 27. Гистограмма, как бутстраповской прогресс бар
- 28. SpriteKit - Прогресс бар с BezierPath
- 29. WUSA VBS Прогресс бар
- 30. cocos2d прогресс бар
Не удалось создать экземпляр модуля inspinia из-за: Ошибка: [$ инжектором: modulerr] http://errors.angularjs.org/1.4.7/$ инжектор/modulerr? p0 = o ...) при ошибке (родной) по адресу http: // localhost: 5000/js/plugins/common/angular.min.js: 6: 416 по адресу http: // localhost: 5000/js/plugins/common/angular.min.js: 38: 184 at m (http: // localhost: 5000/js/plugins/common/angular.min.js: 7: 322) at h (http : // localhost: 5000/js/plugins/common/angular.min.js: 37: 275) – Lakshman
Спасибо praveen Я получаю эту ошибку после выполнения инструкций по ссылке http://chieffancypants.github.io/angular-loading-bar/ – Lakshman
Thanq теперь работает. – Lakshman