2016-08-03 11 views
1

Ich versuche, meine Anwendung mit dem Knoten -Paket ausführen, aber es wird nicht Skripte aus dem übergeordneten Verzeichnis laden.Lite-Server lädt keine Skripte aus dem übergeordneten Verzeichnis in Angular 2 App

Ich möchte meine index.html im Ordner /src, weil es in Zukunft möglich sein könnte, eine andere Datei zu /dist zu generieren. /node_modules und systemjs.config.js müssen im Stammverzeichnis bleiben, da sie sich nicht ändern.

Dateistruktur:

file structure

Die src/index.html:

<html> 
    <head> 
     <base href="/"> 
     <title>task manager</title> 
     <meta charset="UTF-8"> 
     <meta name="viewport" content="width=device-width, initial-scale=1"> 
     <link rel="stylesheet" href="styles.css"> 
     <!-- 1. Load libraries --> 
     <!-- Polyfill(s) for older browsers --> 
     <script src="../node_modules/core-js/client/shim.min.js"></script> 
     <script src="../node_modules/zone.js/dist/zone.js"></script> 
     <script src="../node_modules/reflect-metadata/Reflect.js"></script> 
     <script src="../node_modules/systemjs/dist/system.src.js"></script> 
     <!-- 2. Configure SystemJS --> 
     <script src="../systemjs.config.js"></script> 
     <script> 
      System.import('app').catch(function(err){ console.error(err); }); 
     </script> 
    </head> 
    <!-- 3. Display the application --> 
    <body> 
     <my-app>Loading...</my-app> 
    </body> 
</html> 

Lauf lite-Server innerhalb des /src dir:

when running lite-server inside the /src dir

T Die Knotenmodule existieren. Wenn ich die erforderlichen Dateien in das untergeordnete Verzeichnis selbst verschiebe, /src, läuft der Server problemlos ohne 404s. Ist das ein Problem mit meinen Lite-Server- oder Systemjs-Einstellungen?

Antwort

0

Sie müssen die lite-server richtig konfigurieren.

Im Projektstamm erstellen, eine Datei bs-config.json mit folgendem Inhalt:

{ 
    "port": 8000, 
    "server": { 
    "baseDir": "./src", 
    "routes": { "/": "./" } 
    } 
} 

Nun müssen Sie die lite-server im gleichen Verzeichnis, in dem die bs-config ist .json Datei. Wenn Sie mehr über die Konfiguration lite-server wissen möchten, lesen Sie die Dokumentation Browsersync Options.

Auch mit dieser Konfiguration können Sie den Pfad des Skripts in der Datei index.html ändern:

<script src="node_modules/core-js/client/shim.min.js"></script> 
    <script src="node_modules/zone.js/dist/zone.js"></script> 
    <script src="node_modules/reflect-metadata/Reflect.js"></script> 
    <script src="node_modules/systemjs/dist/system.src.js"></script> 
+0

diese Methode nicht für mich arbeiten, ich bekomme immer noch die gleichen 404, obwohl ich bs -config.js, und fügen Sie Ihre Router in module.exports hinzu – longbow