import {Component, ViewEncapsulation} from '@angular/core';
import {Router, RouteConfig, ROUTER_DIRECTIVES} from '@angular/router-deprecated';
import {Home} from './components/home/home';
import {About} from './components/about/about';
import {RepoBrowser} from './components/repo-browser/repo-browser';
@Component({
selector: 'seed-app',
providers: [],
pipes: [],
directives: [ROUTER_DIRECTIVES],
styles: [require('bootstrap.scss')],
encapsulation: ViewEncapsulation.None,
templateUrl: 'app/seed-app.html',
})
@RouteConfig([
{ path: '/home', component: Home, name: 'Home', useAsDefault: true },
{ path: '/about', component: About, name: 'About' },
{ path: '/github/...', component: RepoBrowser, name: 'RepoBrowser' },
])
export class SeedApp {
constructor() {}
}
Der wichtigste Teil istIst es in Ordnung, eine sehr große CSS-Datei innerhalb von "Styles" in angular2 einzuschließen?
Stile: [require ('bootstrap.scss')],
So Bootstrap (die CSS-Bibliothek) ist ziemlich groß, aber ich will, es benutzen in meiner angular2 app so habe ich die Hauptkomponente Encapsulation von keiner gemacht, so wird es die Stile mit der Seite teilen und dann habe ich bootstrap.scss wie vorgeschlagen enthalten.
Meine Frage ist: ist es in Ordnung, eine so große Zeichenfolge (Tausende von Zeilen) innerhalb der Stile Leistung weise zu haben? ist es besser, Bootstrap in den Kopf der Seite wie eine normale CSS-Datei zu setzen?
Ich würde lieber nicht solche großen Dateien inline verwenden. Auch bei Verwendung von 'ViewEncapsulation.Emulated' oder' Native'. Ich meine, diese Stile werden asynchron geladen und in den meisten Fällen möchten Sie Ihre CSS vor dem Laden Ihrer Seite, nein? Ich würde einfach die Inline-Stile der Komponente verwenden, um bestimmte Komponenten zu stylen, oder wenn Sie eine Komponente als Komponente eines Drittanbieters versenden. Wofür verwenden Sie es? – LordTribual
Mit'Emulated' Angular muss viel umgeschrieben werden (sollte beim Build-Schritt keine Rolle spielen), bei 'Native' würde es überhaupt nicht funktionieren, da Schatten-DOM-Grenzen von CSS nicht überschritten werden können. Ich nehme an, der Build-Schritt fügt das '' 'CSS' '' ''direkt in' index.html' mit 'None' und' Emulated' hinzu. –
Ok das ist wahr, aber das CSS wird später hinzugefügt und nicht bevor die Skripte geladen werden. – LordTribual