Nun, es ist ungefähr eine Woche, ich versuche eine Anwendung mit Angular Material zu starten
Nach so vielen Herausforderungen mit Angular Material und seinen nervenaufreibenden Bugs (die vielleicht wegen ihres Meilensteins, V2 so schnell wie möglich für V2 zu veröffentlichen, nie gelöst werden könnten), bringe ich jetzt meine Gedanken dazu, warum ich 616KB JS+CSS
Angular verwenden muss Materialmodul statt 254KB JS+CSS
Materialisecss.
Wie ich weiß (sag mir, wenn ich falsch liege!):
Es ist am besten zu versuchen, möglichst keine DOM-Elemente zu ändern
Aber Angular Materials Base ist Richtlinien, die eine Menge von Reflow / Repaints verursachen, und tatsächlich basierend auf Demos, die ich sah, war Materializecss viel schneller und leichter als Angular Material.
Das ist offensichtlich Eckiges Material ist mehr Eckig-freundlich und hat einige spezifische Eigenschaften wie $mdThemingProvider
und ..., aber ich habe meine Zweifel über die Verwendung von Angular Material oder vielleicht seine Leistung
Irgendwelche Wörter, um mich wieder in Angular Material glauben zu lassen?
Lohnt es sich, Angular Material anstelle von reinem Angular + Materializecss zu verwenden?
Weil ich keine größeren Veränderungen in ihrem Ergebnis sehen kann?
Winkelmaterial ist ein Winkelmodul, das Winkelanweisungen enthält. Es wurde speziell für angularjs erstellt, während materializscss eine einzige css-Bibliothek mit wenig Javascript ist. Sie sollten eckiges Material verwenden, da alle Komponenten in Ihrer App funktionieren werden, im Gegensatz zu den Materialien, wo einige Dinge nicht funktionieren, ist es für reines JavaScript oder jQuery konzipiert.
Gehen Sie zu Materialisieren.
Ich weiß nicht, warum Leute Ihre Frage abgelehnt haben. Es ist eine legitime Frage. Und obwohl Angular Material eine attraktivere Wahl ist, hat es das berühmte Wort "Angular" in seinem Namen. Aber es ist definitiv nicht die richtige Wahl. Es kann eine bessere Integration mit eckigen Klammern haben, aber ein guter Programmierer kann Materialize gleich gut integrieren.
Eckiges Material hat noch nicht so viele Komponenten. Tatsächlich hat es für einige der Komponenten nicht einmal richtige Beispiele.
Ich habe ein Projekt in Angular Material gestartet, bin dann aber zu Materialise a gewechselt, weil es ab dem 20. September 2017 eine Bibliothek viel umfassender ist. Und das ist auch mit so vielen Beispielen richtig dokumentiert.
Momentan hat es den Eindruck, dass MaterializeCSS ausgereifter und entwickelter ist, mit mehr Funktionen, Animationen und Komponenten.
Angular-Material hat jedoch eine große ToDo-Liste, so dass es aufholen könnte, aber es sieht so aus, als würde es bis 2018 oder später nicht auf der Grundlage ihres GitHubs passieren Readme-Status Nach Ende 2017 ist nichts geplant.
Materialise Vor- und Nachteile
PRO: Das Gute daran ist, dass "Was du tippst, was du bekommst", was bedeutet, dass HTML und CSS, die du in eckige Vorlagen eingibst, genau so sind wie im Browser Das bedeutet, es ist sehr einfach mit CSS zu stylen.
CON: Das Schlimme daran ist, dass jquery erforderlich ist, was bedeutet, dass bei der Verwendung von angular spezielle Einstellungen erforderlich sind. Wenn Sie Webpack verwenden, ist es sehr einfach, das Plugin
Beispiel:
%Vor%Das macht jquery automatisch in jedem Modul verfügbar, das es benutzt, also ist es wirklich nicht schlecht.
PRO: Eine weitere gute Sache ist, dass es einfach ist, html / css von einem Projekt in ein anderes zu portieren, da es nur html und css ist, keine benutzerdefinierten Anweisungen. Wenn Sie also von eckig zu reagieren oder zu einfachem HTML wechseln wollten, wäre das mit Materialise einfach, während Sie alle Ihre Markups und Stile beibehalten.
PRO: Gut entwickelt, viele Komponenten, viele Stile, viele Funktionen, die Ihrer App einen professionellen Glanz verleihen
PRO: Sehr gute Dokumentation und hervorragende Beispiele.
PRO: Entwickler reagieren sehr gut auf GitHub-Probleme und PRs
MaterializeCSS Score: +4
Winkelmaterial Vor- und Nachteile
PRO: Die gute Sache ist, dass es für eckig gebaut ist, so hat es benutzerdefinierte Direktiven eckigen Stil. Dies erforderte jedoch auch die Einrichtung, da Sie das Modul importieren müssen, aber das unterscheidet sich nicht von einem Winkelmodul.
PRO: Entwickler reagieren auch sehr gut auf GitHub-Probleme und PRs
CON: Das Schlimme an eckigem Material ist, dass es all diese benutzerdefinierten Anweisungen in ihre eigenen HTML- und CSS-Dateien übersetzt, was ich ziemlich schwierig zu überschreiben und anpassen kann, aber nicht unmöglich.
CON: Eine andere schlechte Sache ist, dass der Code nicht tragbar ist. Es funktioniert nur für angular2 +, also können Sie mit diesem Framework nicht wechseln. All Ihre Markup und Stile sind in eckigen stecken.
CON: Bevor er ausgereift ist, kann viel mehr Fortschritt erzielt werden, und er kann eine vollständige Materialexpertise bieten.
CON: Schlechte Dokumentation. Die Beispiele sind begrenzt, es gibt nur eine minimale Erklärung zu Beispielen, es gibt keine Optionen, was jedes Beispiel tun kann, was bestenfalls verwirrend ist.
Angular Material Score: -2
Aufgrund dieser kurzen Analyse ist Materialise meines Erachtens ab September 2017 der richtige Weg, auch wenn Sie eine Angular2 + App verwenden. Ich verwende Materialise in meiner eckigen 4-App und es funktioniert großartig. Ich hoffe, das hilft.
Tags und Links javascript angularjs angular-material material-design materialize