Ist es möglich, dass Sie die Breite Ihres Layouts nur in einer ausgewählten Komponente ändern? Ich wollte die <div class="page home-page">
nur in meiner Login-Komponente ändern? Nur in der Login-Komponente und nicht auf anderen Komponenten.Breite eines Layouts in einer bestimmten Komponente in einem Winkel ändern
Antwort
Richtlinien können die Lösung Ihres Problems sein.
src/app/width.directive.ts
import { Directive, ElementRef, Input } from '@angular/core';
@Directive({ selector: '[width]' })
export class widthDirective {
@Input()
set width(width: number) {
this.el.nativeElement.style.width = `${this._width}px`;
}
constructor(el: ElementRef) {}
}
Dann in jeder Komponente, die Sie verwenden können:
<div class="page home-page" width [width]="500">
Wenn Sie Ihre Richtlinien zugänglich machen wollen, überall können Sie this answer folgen.
Alle Stile (außer dem Haupt globalen Sheet) in Angular 2/4 sind gekapselt, so dass, wenn Sie Stylesheets wie dies zB:
@Component({
selector: 'component-name',
templateUrl: './component.html',
styleUrls: ['./component.css']
})
Alle Stile von component.css
werden NUR auf component.html
angewendet werden (wenn Sie verwenden keine Dinge wie /deep/
und das gleiche). Sie können also die Breite des aktuellen Layouts ändern, dies wirkt sich nicht auf andere Layouts aus!
Allerdings ist meine div class = "Seite Homepage" auf andere Komponente gefunden. Wie kann man die div class = "page home-page" auf der Login-Komponente aufrufen und ihre Breite auf das einstellen, was Sie wollen? – Joseph
@Joseph, wenn es sich in einer anderen Komponente befindet, können Sie von der aktuellen Datei 'component.css' nicht darauf zugreifen. Sie können globale Stile in der Datei 'styles.css' schreiben (sie befindet sich irgendwo in der Nähe des Projektstamms). –
@Kommerzieller Selbstmord. Ja, ich habe das Design der Seite div class = "page home" auf der styles.css angewendet und möchte die Breite nur in der login.component ändern. Nur auf der login.component und nicht auf andere Komponente – Joseph
- 1. ändern Breite eines UIBarButtonItem in einem UINavigationBar
- 2. Screenshot eines bestimmten Layouts erstellen
- 3. Erstellen eines anderen mobilen Layouts für eine Komponente in ReactJs
- 4. mit ControllerAs in einem Winkel 1.5 Komponente
- 5. Fragment in einem bestimmten Winkel hinzufügen
- 6. Ändern eines bestimmten Bytes in einer Datei
- 7. Hören eines Modells in Komponente Winkel 2
- 8. Die Größe eines Layouts ändern
- 9. ändern Breite eines UIBarButtonItem in einem UINavigationBar in schnellen
- 10. Ändern Vordergrundfarbe eines Layouts programmgesteuert
- 11. Laden Komponente in einer anderen Komponente mit @ Eingang in Winkel
- 12. Herauszufinden, Breite eines Strings in einer bestimmten Schriftart
- 13. Breite eines bsPopover in Shiny ändern
- 14. Polymerelemente in Winkel 2 Komponente
- 15. Fehler in Winkel-cli Hinzufügen einer Komponente
- 16. Ändern Standardfarben in einem Kreis Highchart Winkel
- 17. Ändern eines bestimmten Felds und einer Variablen in einer Datei
- 18. Ausrichten eines Layouts mit einem untergeordneten Element eines anderen Layouts
- 19. Ändern Komponente Vorlage Name Winkel 2
- 20. die Container-Klasse aus einer verschachtelten Komponente in Winkel
- 21. Finden von Punkten in einem Rechteck in einem bestimmten Winkel
- 22. Aktualisieren Sie den DrawingCache eines bestimmten Layouts in Android
- 23. Zeichnen Sie eine Linie in einem bestimmten Winkel in Java
- 24. Android-Layouts für kleinste Breite
- 25. Dynamische Komponente in Winkel 2
- 26. Refresh-Komponente in Winkel 2
- 27. JQuery funktioniert nur in einer bestimmten Breite
- 28. Cropping Span in einer bestimmten Breite
- 29. Android - Dynamisch ändern Hintergrundfarbe eines Layouts
- 30. Dynamisches Ändern von Layouts als statische Layouts
Wie kann ich das tun? calc (100% - 200px)? – Joseph
Sie können Ihre 'calc' Funktion innerhalb des' WidthDirective' und tun so etwas wie '@Input() Schränkungsweite bewegen (Breite: Zahl) { this.el.nativeElement.style.width = \' $ {this.calc (100% - Breite)} px \ '; } 'es hängt' calc() 'Rückgabewert, können Sie mir die Funktion zeigen? – Lilrom