Czy istnieją wbudowane usługi/dyrektywy/trasy do zmiany widoku (lub strony za pomocą routingu) na podstawie typu przeglądarki/platformy, z której użytkownik korzysta? Chciałbym, aby telefony i tablety miały inny widok niż użytkownicy komputerów.Angularjs - zmienić widok na podstawie przeglądarki/platformy?
8
A
Odpowiedz
7
Nie znam niczego wbudowanego w Angular, ale można to zrobić, wprowadzając logikę do reguł routingu. Na przykład:
angular.module('browser-routing', []).
config(function($routeProvider) {
$routeProvider.
when('/', {templateUrl: getBrowser() + '.html'})
});
W tym przykładzie, jeśli getBrowser() zwraca 'iphone'
będzie renderowanie widoku iphone.html
można użyć BrowserDetect robić to, co sama nazwa wskazuje.
2
Chociaż angularjs nie posiada żadnej szczególnej funkcji, aby to zrobić out-of-the-box, istnieje wiele różnych podejść do osiągnięcia czegoś takiego:
- Korzystanie CSS3 media queries to make a responsive design. W zależności od potrzeb może to być najlepszym rozwiązaniem, ponieważ można uniknąć ponownego wdrażania funkcji dla wielu rzutni.
Można napisać usługę sprawdzić i dokonać zmiany trasy:
myApp.factory('checkWidth', function ($location, $window) { return function() { if ($window.document.width < 700) { $location.url('/mobile'); } } });
Powiązane problemy
- 1. AngularJs: Dodaj klasę na podstawie modelu
- 2. AngularJS - złożone filtrowanie na podstawie kategorii itp.
- 3. AngularJs: Ukryj element nawigacyjny na podstawie trasy?
- 4. jak zmienić widok domyślnej karty nawigacji na widok dostosowanej karty?
- 5. Jak zmienić wyjście mysql na podstawie wartości
- 6. Jak zmienić CSS na podstawie urządzenia mobilnego?
- 7. Zmienić wartość modelu na podstawie innych wartości?
- 8. Jak zmienić Widok domyślny i widok częściowy
- 9. Jak zmienić widok folderu w Laravel5?
- 10. Jak zmienić wartość opóźnienia za pomocą angularjs?
- 11. Czy powinien być jeden kontroler na widok w Angularjs?
- 12. Arkusze stylów AngularJS przełącznika na podstawie danych wprowadzanych przez użytkownika
- 13. Pozycja ustalona elementu AngularJS na podstawie innego elementu
- 14. Wywołanie funkcji angularjs przy wprowadzaniu tekstu na podstawie długości
- 15. AngularJS: dynamicznie ładuj widok częściowy do strony
- 16. Widok nie jest aktualizowany w AngularJS
- 17. Jak zmienić widok wskaźnika aktywności na cały ekran?
- 18. Zmienić kolor Visual Studio na podstawie lokalizacji projektu?
- 19. Jak mogę zmienić zachowanie DecimalFormat na podstawie długości wejściowej?
- 20. Jak zmienić szablon Django na podstawie grupy użytkownika?
- 21. Śledzenie, kiedy widok zmienia się w angularjs
- 22. AngularJS bootstrap ui - jak zmienić style CSS?
- 23. Widok systemu Android layout_width - jak zmienić programowo?
- 24. Jak zmienić widok z zakładki paska akcji
- 25. Jak zmienić widok pakietu w IntelliJ?
- 26. angularjs: Nie można zmienić typ wejścia
- 27. Jak zmienić dane AngularJS poza zakresem?
- 28. Edytor węzłów na podstawie HTML5?
- 29. nie można zmienić styl CSS w angularjs
- 30. jak zmienić wpis [ 'Content-Type'] w angularjs