Ich versuche, eine Navigationsleiste mit eckigen Material 2 zu erstellen, die in kleinen Bildschirmen wie mobilen Geräten und Tablets zusammenfällt. Ich konnte nur md-Taste, aber nicht md-Menüleiste finden, wie in eckigem MaterialWie man eine reaktive Nav-Bar mit eckigem Material 2 macht?
Antwort
Hier ist, was ich verwendet habe, um meine reagierende nav-bar
mit Angular2 + Material 2 und Flex-Layout in angular-cli
App zu bauen.
(Bitte besuchen Install Angular Material and Angular CDK)
1) Installieren flex-Layout
npm install @angular/flex-layout -save
2) Fügen Sie flex-Layout in Ihrem app.module.ts
import {FlexLayoutModule} from "@angular/flex-layout";
3) Import
imports: [
BrowserModule,
FormsModule,
HttpModule,
RoutingModule,
FlexLayoutModule,
MyOwnCustomMaterialModule // Please visit the link above "Install Angular Material and Angular CDK", and check (Step 3: Import the component modules).
],
app.component.html
<mat-toolbar color="primary">
<button mat-button routerLink="/">
<mat-icon>home</mat-icon>
{{title}}</button>
<!-- This fills the remaining space of the current row -->
<span class="fill-remaining-space"></span>
<div fxLayout="row" fxShow="false" fxShow.gt-sm>
<button mat-button routerLink="/products">Products</button>
<button mat-button routerLink="/dashboard">Dashboard</button>
</div>
<button mat-button [mat-menu-trigger-for]="menu" fxHide="false" fxHide.gt-sm>
<mat-icon>menu</mat-icon>
</button>
</mat-toolbar>
<mat-menu x-position="before" #menu="matMenu">
<button mat-menu-item routerLink="/products">Products</button>
<button mat-menu-item routerLink="/dashboard">Dashboard</button>
<!--<button mat-menu-item>Help</button>-->
</mat-menu>
app.component.css
.fill-remaining-space {
/*This fills the remaining space, by using flexbox.
Every toolbar row uses a flexbox row layout. */
flex: 1 1 auto;
}
Hinweis: zu testen, Größe der Seite ändern
einen Blick auf flex-layout docs
Werfen Sie einen Blick auf angular2-material
Projekt auf Github. Hier ist eine Liste von Materialdesign Komponenten, die sie veröffentlicht haben bisher:
https://www.npmjs.com/~angular2-material
Außerdem glaube ich, entweder md-sidenav
oder md-toolbar
ist das, was Sie suchen.
md-sidenav
- https://www.npmjs.com/package/@angular2-material/sidenav
md-toolbar
- https://www.npmjs.com/package/@angular2-material/toolbar
Hinweis: Das Projekt noch im Alpha-Release ist, was bedeutet, kann es in ihrer API brechen Veränderungen geben. Nicht empfohlen, in der Produktion zu verwenden.
Mein plumpen Versuch, die Antwort mit einer Symbolleiste mit Schublade Implementierung mit neuen Komponentennamen als Winkel-Material 5.0.2
zu tun zu ändern: Need CSS zu erhalten aller Header-Links behoben. Das Menüsymbol sollte transparent sein.
https://responsivematerial2.stackblitz.io/
.mat-sidenav-container {
background: rgba(0, 0, 0, 0.08);
}
.blank-grow {
flex: 1 1 auto;
}
<mat-sidenav-container fullscreen>
<mat-sidenav #sidenav>
<mat-nav-list>
<a mat-list-item>
<mat-icon mat-list-icon>home</mat-icon>
<span mat-line>home</span>
</a>
<a mat-list-item>
<mat-icon mat-list-icon>backup</mat-icon>
<span mat-line>Backup</span>
</a>
</mat-nav-list>
</mat-sidenav>
<mat-toolbar color="primary">
<button mat-icon-button (click)="sidenav.open()" fxHide="false" fxHide.gt-sm>
<mat-icon>menu</mat-icon>
</button>
<span> Big Header</span>
<span class="blank-grow"></span>
<div fxLayout="row" fxShow="false" fxShow.gt-sm>
<a>
<mat-icon mat-list-icon>home</mat-icon>
<span mat-line>home</span>
</a>
<a>
<mat-icon mat-list-icon>backup</mat-icon>
<span mat-line>Backup</span>
</a>
</div>
</mat-toolbar>
</mat-sidenav-container>
- 1. Mosaik-Layout mit eckigem Material
- 2. Paginierungsanweisung in eckigem Material
- 3. Custom Styles auf Eingaben mit eckigem Material 2
- 4. Icon-Registerkarten mit eckigem Material erstellen?
- 5. Wie gestalte ich Karten in eckigem Material?
- 6. Wie wird Card in eckigem Material ausgerichtet?
- 7. Toast Positionierung in eckigem Material Seite
- 8. Bootstrap navbar - wie man navbar-header volle Breite macht
- 9. Bootstrap 3: Wie man eine zentrierte Navbar macht
- 10. Wie erstelle ich ein Kartenraster mit eckigem Material?
- 11. Meine eigenen Stile in eckigem Material ui
- 12. Erstellen einer Navbar mit Material-Ui
- 13. Binden Sie mdTabs von eckigem Material an eine Bereichseigenschaft
- 14. Versucht, ein Raster von Karte mit eckigem Material zu haben
- 15. Wie richten Sie die Radiobuttons horizontal in eckigem Material aus?
- 16. Kalendersymbol wird nicht mit eckigem Material angezeigt. md-datepicker Direktive
- 17. macht eine navbar Sticky, wenn Benutzer scrollt
- 18. Wie kann man eine reaktive Nachrüstanforderung in Java entprellen?
- 19. Wie kann man freien Text in der md-Autocomplete-Komponente von eckigem Material verbieten?
- 20. Angular-Material Flex macht nichts
- 21. Wie man Portal 2 Style-Übergänge macht?
- 22. Was ist der Unterschied zwischen eckigem Material und Polymer?
- 23. 2 Navbar-Marken auf One Navbar
- 24. Wie man eine UNION mit Lehre macht?
- 25. Wie macht man eine Transformationsskalenanimation mit jQuery?
- 26. Wie man eine Seitenumleitung mit JavaScript macht?
- 27. UI Grid 3.0 mit eckigem Bootstrap Akkordeon
- 28. Wie macht man R-Legende mit 2 Spalten?
- 29. Wie man eine Shell macht?
- 30. Wie macht man diese 2 Dinge in Sublime Text 2?
funktioniert sehr gut. Danke für die Aufmerksamkeit auf dem Flex-Layout. Hatte nichts davon gehört. –
Froh, das zu hören :) – user2662006
Coole Lösung. Denken Sie daran, dass FlexLayoutModule.forRoot() veraltet ist. wir verwenden jetzt einfach FlexLayoutModule –