2016-10-17 2 views
7

Wenn ich versuche, einen ng-Test auszuführen, werden alle meine Module und Komponenten korrekt geladen, aber alle Elemente, die ich in <img> Tags einbinde, werden nicht gerendert, da sie nicht im Ordner/assets (wie in) bereitgestellt werden ein Build oder während der Entwicklung mit ng dienen)Wie serviere ich Assets, wenn ich ng Test mit dem neuesten angular-cli (beta 15 w/webpack) starte?

Darüber hinaus wäre es schön zu wissen, wie Sie die globale styles.scss/CSS-Datei in den Test aufgenommen werden, wie ich nur diese Stile erhalten kann Rendern, wenn ich das CSS in eine Komponente lösche und ViewEncapsulation deaktiviere.

Ich bin auf dem neuesten Winkel-cli webpack Release (Beta 15)

Jede Hilfe wird sehr geschätzt.

Antwort

9

Ich fand die Antwort!

standardmäßig das Karma-Setup in der Winkel-cli (webpack) dient nicht Ihr Vermögen Ordner standardmäßig, aber dies ist sehr einfach zu addieren (sobald Sie durch die Dokumentation sichten)

ist eine Screenshot von meinen Ergebnissen und dem Code ich habe es

enter image description here

um die Sie mein Bild von Billy May können links zur Arbeit zu kommen sehen jetzt serviert wird, nach rechts, wenn Sie an der ‚Datei‘ aussehen Abschnitt der JSON, fügte ich Folgendes hinzu:

{ pattern: './src/assets/**', watched: false, included:false, nocache:false, served:true } 

Ich habe auch eine Proxy-Eigenschaft, bei http://localhost:[karma Portnummer]/base

proxies: { 
    '/assets/': '/base/src/assets/' 
}, 

die serviert Inhalt (serviert standardmäßig zu nehmen von /assets/ als den Ordner Proxy Angabe Karma verwendet den Pfad localhost:[karma port number]/assets statt des Standards.

Ich bin froh, dass ich meine eigene Frage hatte, und hoffe, dass dies einigen Leuten hilft, die mit dem angular-cli beginnen!

+2

Ich weiß es sagt, nicht Danke zu sagen, aber, danke! Ich habe den Abschnitt "Dateien" beim ersten Lesen übersehen, weil er nicht wie der Abschnitt "Proxies" als Code markiert ist - vielleicht könnten Sie ihn neu formatieren? –

Verwandte Themen