Ich habe eine Anwendung für Angular 2 Alpha 45 gebaut und es funktionierte wunderbar, aber ich musste viel herumspielen, um es zum Laufen zu bringen. Ich verstehe Angular 2, aber ich verstehe nicht, wie es funktioniert, um tatsächlich mit Angular 2 zu starten.Angular 2 Beta: Visual Studio ASP.NET MVC
Ich versuche einen sauberen Build der 'Angular 2: 5 min Quickstart'. Es gibt eine Reihe von Problemen, und ich werde so genau wie möglich sein. Ich möchte erfahren, warum diese Probleme auftreten und hoffentlich beheben. Visual Studio 2015 Update 1, Typescript 1.7.
Typoskriptkonfiguration: Der Schnellstart enthält eine tsconfig.json-Datei.
{
"compilerOptions": {
"target": "es5",
"module": "system",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false
},
"exclude": [
"node_modules"
]
}
Ich bin nicht sicher, ob dies alles, obwohl der Fall ist, wie ich hatte die ProjectName.csproj Datei zu bearbeiten und die Zeile: <TypeScriptExperimentalDecorators>True</TypeScriptExperimentalDecorators>
an den Experimental Zierer Fehler loszuwerden. https://github.com/Microsoft/TypeScript/issues/3124 scheint darauf hinzuweisen, dass die tsconfig-Datei in/Scripts funktionieren muss, aber das funktioniert auch nicht für mich.
Ich möchte entweder wissen, wie diese tsconfig-Datei zu arbeiten, oder um die .csproj-Datei zu bearbeiten, um die gleichen Compiler-Optionen zu erhalten. Wenn Sie in den Projekteigenschaften> Typescript Build nachsehen. Sind diese was wichtig? Sollte das Modulsystem sein: System?
Meine Dateistruktur ist die gleiche wie der Quickstart.
app/
app.component.ts
boot.ts
node_modules/
blah
index.html
tsconfig.json
package.json
Ich habe Powershell verwendet, um npm install auszuführen, um alles im Verzeichnis node_modules zu erhalten.
import {Component} from 'angular2/core';
zeigt einen Fehler an. ../node_modules/angular2/core';
zeigt den Fehler nicht an, aber wenn Sie das Projekt erstellen, erhalten Sie viele Buildfehler in Dateien in node_moduels/angular2/src/*
. Jetzt kann ich vielleicht gehen und diese Probleme manuell beheben, aber ich habe das Gefühl, dass die Konfiguration falsch ist, wenn diese Fehler auftreten. Das tsconfig scheint node_modules
ausschließen zu wollen. Warum kann ich 'angular2/core'
nicht verwenden und muss stattdessen einen relativen Pfad dazu verwenden? Wenn ich die node_modules in das Visual Studio-Projekt einfüge, gibt es eine wahnsinnige Menge an Build-Fehlern in der node_modules
. Separat: Ich mache diesen sauberen Build, weil ich nicht herausfinden konnte, wie ich das Projekt von Alpha 45 auf Beta 0 aktualisieren könnte. Das Beheben von Bugs in meinem Projekt von Angular 2 Änderungen wird einfach sein, aber die App laden Module im Moment ist unmöglich.
Der nächste Teil wird unter der Annahme, ich an den Buildfehler erhalten: In index.html
gibt es das:
System.config({
packages: {
app: {
format: 'register',
defaultExtension: 'js'
}
}
});
System.import('app/boot')
.then(null, console.error.bind(console));
ich nie die System.import('app/boot')
bekommen haben, ohne Angabe der Dateierweiterung zu arbeiten. Ist dies ein Visual Studio-Problem oder ist es ein .NET MVC-Problem? Wenn ich die Dateierweiterung in index.html
gebe, dann erhalte ich 404s mit System.js, die versuchen, die Komponentendateien ohne eine Dateierweiterung zu finden (obwohl die Konfiguration defaultExtension: 'js'
hat. Ist das, weil ich die js Dateien in meinem Projekt einschließen muss? Dann wenn ich an dieser Frage zu bekommen, muss ich mit
system.src.js:1049 GET http://localhost:63819/angular2/http 404 (Not Found)
beschäftigen habe ich nicht einen einzigen Build-Fehler haben, aber jetzt System.js ist nichts zu laden.
Ich glaube, das sind alles Probleme, die von verschiedenen Systemen erstellt werden, die das Typoskript unterschiedlich interpretieren. Ich habe das Gefühl, dass ich nicht klar war, aber ich weiß nicht, wie ich das klarstellen soll. Ich würde wirklich jede Hilfe und Führung schätzen, die Sie mir geben könnten. Ich fühle mich, als hätte ich seit Tagen eine Antwort darauf gesucht.
Ich versuche diese Lösung, aber mein Import bleibt auf Home ... lieber als Root (Host), können Sie irgendetwas vorschlagen? – KnowHoper