2016-11-04 2 views
14

Ich arbeite gerade an einem kleinen Angular2-Projekt. In meinem Fall muss ich einige der Anfragen (wie "/ faq", "/ aboutus") zurück zu meinem alten Backend-Server umleiten, um einige serverseitig gerenderte thymeleaf-Vorlagen zu erhalten. Daher verwende ich den eingebauten Proxy, um auf meinen Backende Server umzuleiten. Leider für einige seltsame Grund, es nur Server die html Dateien ohne alle Skripte und Arten oder Bilder. (Ich benutzte den eckigen cli, um meine Projektstruktur zu schaffen)Was ist der Standardpfad für statische Dateien in Angular2?

Das ist, warum ich diese statischen Dateien in meinen eckigen2 Ordner hinzufügen wollte, aber ich kann den korrekten Platz nicht finden, um es meiner Anwendung zur Verfügung zu stellen. Kann jemand diese Datei innerhalb der Projektstruktur korrekt platzieren?

Vielen Dank im Voraus für jede Hilfe

Antwort

17

Nach dem aktuellen angular-cli readme (v1.0.1):

You use the assets array in angular-cli.json to list files or folders you want to copy as-is when building your project:

"assets": [ 
    "assets", 
    "favicon.ico" 
] 

standardmäßig die assets Ordner für diese konfiguriert ist, so dass Sie Ihre platzieren Dateien in eine Struktur wie

├── src 
. ├── assets 
. . ├── file1.txt 
. . ├── img 
    . │ └── image1.png 
     └── css 

und dienen sie von url p ath /img/image1.png usw.

Wenn Sie mit der Standardoption nicht zufrieden sind, fügen Sie einen Ordnernamen Ihrer Wahl zu angular-cli.json, dh

"assets": [ 
    "static", 
    ... 
] 

Erstellen Sie den ./src/static/ Ordner für Ihre Dateien und dienen analog zur Standard .

+0

Ich habe diesen Fehler: Kann keine Routen übereinstimmen. URL-Segment: 'assets/images/test.png'. irgendetwas fehlt? Vielen Dank. – Rocky

+0

@Rocky Dienen Sie nicht von "/assets/images/test.png", servieren Sie es aus "/images/test.png" – Rap

+3

FYI: für eckige 4, müssen Sie sie mit 'Assets/img/image1 dienen .png' etc –

Verwandte Themen