2016-10-13 2 views
0

Ich versuche, angular2-Modul in einer cshtml-Datei zu laden. Ich habe das Laden mit einer HTML-Datei arbeiten, so habe ich versucht, alle erforderlichen Skripts in Cshtml-Datei kopieren, aber es wird nicht ordnungsgemäß geladen, wie es laden/App/HauptLaden von angular2 auf cshtml Datei

Dies ist die ursprüngliche HTML-Datei-Tag.

<!DOCTYPE html> 
<html> 

<head> 
    <meta name="viewport" content="width=device-width" /> 
    <title></title> 
    <script src="/node_modules/es6-shim/es6-shim.js"></script> 
    <script src="/node_modules/angular2/bundles/angular2-polyfills.js"></script> 
    <script src="/node_modules/systemjs/dist/system.src.js"></script> 
    <script src="/node_modules/rxjs/bundles/Rx.js"></script> 
    <script src="/node_modules/angular2/bundles/angular2.dev.js"></script> 
    <script> 

    System.config({ 
     packages: { 
      'app': { 
       defaultExtension: 'js' 
      } 
     }, 
    }); 
    System.import('/app/main').then(null, console.error.bind(console)); 
    </script> 
</head> 

<body> 
    <div> </div> 
</body> 

</html> 
<pm-app> 
    <div> 
     <p> Please wait ...</p> 
    </div> 
</pm-app> 

Und es kommt mit dem folgenden Fehler auf:

Failed to load resource: the server responded with a status of 404 (Not Found)

Ich habe schon versucht, diese mit einem cshtml mit dem folgenden Code.

@{ 
    ViewBag.Title = "Index"; 
} 
<script src="~/node_modules/es6-shim/es6-shim.js"></script> 
<script src="~/node_modules/angular2/bundles/angular2-polyfills.js"></script> 
<script src="~/node_modules/systemjs/dist/system.src.js"></script> 
<script src="~/node_modules/rxjs/bundles/Rx.js"></script> 
<script src="~/node_modules/angular2/bundles/angular2.dev.js"></script> 
<script> 

    System.config({ 
     packages: { 
      'app': { 
       defaultExtension: 'js' 
      } 
     }, 
    }); 
    System.import('/app/main').then(null, console.error.bind(console)); 
</script> 


<h2>Index </h2> 

<pm-app>Loading App ...</pm-app> 

Und dies kommt mit der gleichen Fehlermeldung. Ich habe auch versucht 1. setzen alle Skripte in den Header-Bereich der Layout-Seite 2. Setzen Render-Bereich in der Layout-Seite und Hinzufügen von Abschnitt in der index.cshtml-Datei.

Alle drei Versuche gaben mir die gleiche Fehlermeldung, so dass ich mich fragte, ob dies nur eine schlechte Übung ist, um es auf diese Weise zu tun (Laden von eckigen Modul in cshtml) oder wenn es eine Lösung gibt.

Vielen Dank für die Hilfe im Voraus.

Prost.

+0

Ich vermute, Sie haben falschen Pfad in 'System.import ('/ app/main'). Dann (null, console.error. Bind (Konsole)); ' –

+0

Hallo Pawel, danke für Ihre Eingabe. Ich glaube, dass der Pfad selbst korrekt ist, da index.html im Root-Pfad ist. Und wenn ich .js so hinzufüge, wenn es '/app/main.js' aufruft, sucht es nach der nächsten js Datei, die app.component ist. Es sieht also so aus, als würde es die js-Erweiterungskonfiguration nicht erkennen. – rlee923

+0

Sie verpassen ein ''-Tag, das Sie später für angular 2 brauchen, um Dinge zu finden, ich bin mir auch nicht sicher, ob die Hauptoption undefiniert für die System.config korrekt ist. Probieren Sie 'packages: {'app': {main: '/ app/main', defaultExtension: 'js'}}' und dann 'System.import ('app')' Sie möchten vielleicht auch eine Karte in Ihrer Konfiguration als Die Karte enthält die Pfadhinweise für den Systemlader. – silentsod

Antwort

Verwandte Themen