2015-09-24 15 views
16

Pracuję nad projektem Angular, w którym użyłem komponentów Angular Material (głównie md-Buttons). Aplikacja pokazuje różne płytki, z których każdy jest md-Button. W tym czasie prawdopodobnie będę miał 20-30 płytek max. Te płytki powtarza się przy użyciu ng-repeat.Co można zrobić, aby poprawić zachowanie IE11 za pomocą materiału kątowego?

Aplikacja działa poprawnie w Chrome, jednak w IE11 mam problem z renderowaniem regularnie. Renderowanie trwa około 5-6 sekund. Przełączanie wyświetlania kafelków działa słabo. Przewijanie ekranu prowadzi do sklejania się komponentów, a następnie poruszania się po upływie 1 sekundy.

Prawdopodobnie materiał kątowy jest zbyt ciężki dla IE11. Czy jest coś, co mogę zrobić, aby przyspieszyć działanie w IE11, ponieważ jest to moja główna wyszukiwarka docelowa?

Próbowałem:

  1. Aktualizacja bibliotek kątowe.
  2. Używanie poprawki MS052
  3. Usuwanie kilku przejść z materiału kątowego css.

Żadne z powyższych nie wydaje się mieć dużego wpływu.

Myślę, że materiał kątowy jest dobrą biblioteką i musi istnieć coś, co można zrobić, aby poprawić jego działanie w IE11. Czy ktoś może zaproponować coś skutecznego?

Odpowiedz

4

Pracujemy również na kątową projektu i mamy do czynienia z problemów z wydajnością programu Internet Explorer 11.

znalazłem ten błąd na github, które pomogły mi: https://github.com/angular/material/issues/1771

Rozwiązanie: W ostatniej wersji 0.11 .1 pracowali nad problemami z wyświetlaniem układu w Internet Explorerze, więc właśnie zaktualizowałem materiał kątowy do wersji v0.11.1 i dodałem tę linię do mojego pliku JavaScript kątowej konfiguracji:

$provide.constant('$MD_THEME_CSS', '/**/'); 

Poprawiono wydajność przeglądarki Internet Explorer 11.

+0

nie działało zgodnie z oczekiwaniami –

0

Zauważyłem, że zawijam wszystkie moje js w IIFE i dodając "użyj ścisłego"; wszędzie, gdzie jest to odpowiednie, znacznie poprawiło wydajność mojej aplikacji Angular Material. W przeglądarce IE jest wciąż wolniejszy od Chrome, ale wydajność jest nie do zaakceptowania.

0

Problem dotyczy CSS.

Zastosowanie czystego css modułu NPM aby IE zgodną CSS Uruchom poniższy kod w runkit.com i dostać IE optymalizacji CSS Więcej informacji można znaleźć opcję kompatybilności sprzątania css

https://runkit.com/npm/clean-css-pre-2.1.0

var request = require("request") 
CleanCSS = require("clean-css-pre-2.1.0") 

var url = "https://cdnjs.cloudflare.com/ajax/libs/angular-material/1.1.1/angular-material.min.css" 

request({ 
    url: url, 
}, function (error, response, body) { 

    if (!error && response.statusCode === 200) { 
     var source = body; 
     var minimized = new CleanCSS({compatibility : '*'}).minify(source); 
     console.log(minimized) 
    } 
}) 
Powiązane problemy