Wie kann ich Typoskript zu einem vorhandenen Asp.Net MVC-Projekt hinzufügen?

stimmen
41

Ich liebe die Idee hinter Typoskript, kann aber nicht scheinen , um herauszufinden , wie es in einem ASP.Net MVC - Projekt aufzunehmen. Ich habe bereits installierte die Visual Studio - Erweiterung, aber ich kann nicht scheinen , ein Beispiel oder Dokumentation zu finden , wie man hinzufügen *.tsDateien , die in kompilieren *.jsDateien.

Edit: Eigentlich soll ich replizieren die Art und Weise , dass das Win8 Beispiel .jsprojenthält und Griffe .tsDateien? Oder wird , dass nur für HTML / JS Win8 Projekten arbeiten?

Veröffentlicht am 01/10/2012 um 21:22
quelle vom benutzer
In anderen Sprachen...                            


6 antworten

stimmen
24

Achtung: Diese Antwort ist jetzt ziemlich veraltet, da beide Typoskript und MVC deutlich , da diese Antwort geändert haben. Ich werde später ein Update versuchen. - Richcoder

Dank Sohnee für die Antwort.

Sie können Typoskript - Dateien in ein bestehendes Projekt mit dem Hinzufügen> Neues Element Dialog hinzufügen. exampleImage Bitte beachten Sie, dass die ‚Typoskript Datei‘ Artikel nicht unter der Web - Gruppe nicht aufhalten , aber unter seinem Elternteil in diesem Fall Visual C #.

Dies sollte eine Typoskript-Datei hinzufügen und Visual Studio wird den Rest erledigen.

Dann müssen Sie diese Zeilen in der Projektdatei hinzuzufügen:

 <ItemGroup>
    <AvailableItemName Include="TypeScriptCompile" />
 </ItemGroup>
 <ItemGroup>
    <TypeScriptCompile Include="$(ProjectDir)\**\*.ts" />
 </ItemGroup>
 <Target Name="BeforeBuild">
    <Exec Command="&quot;$(PROGRAMFILES)\Microsoft SDKs\TypeScript\0.8.0.0\tsc&quot; -target ES5 @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" IgnoreExitCode="true" />
 </Target>

Es funktionierte perfekt für mich, aber bitte kommentieren, wenn Sie in Probleme laufen.

Beantwortet am 03/10/2012 um 00:38
quelle vom benutzer

stimmen
19

Das ist richtig. alles, was Sie brauchen, ist die ms Ziel bauen die .ts-Dateien in Js-Dateien zu erstellen. Das Win8 Beispiel zeigt ein Before Ziel tsc auf alle Dateien, die zu ItemGroup TypeScriptCompile zu nennen, die als $ (ProjectDir) *** definiert ist. Ts (oder alle .ts-Dateien in Ihrem Projekt).

dieses Musters Replizieren sollte in jedem msbuild Projekt arbeiten, und nicht nur Win8 Projekte.

Hier ist ein Beispiel von dem, was ich spreche: Fügen Sie diese auf jedes msbuild Projekt, und Sie sollten alle .ts in die equivialnt js-Datei-Datei kompilieren, wenn die Build beginnt ..

<ItemGroup> 
   <TypeScriptCompile Include="$(ProjectDir)\**\*.ts" />
</ItemGroup>


<Target Name="TypeScriptCompile" BeforeTargets="Build">
   <Message Text="Compiling TypeScript files" />
   <Exec Command="&quot;$(PROGRAMFILES)\Microsoft SDKs\TypeScript\0.8.0.0\tsc&quot; -target ES5 @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" />
</Target>
Beantwortet am 01/10/2012 um 23:14
quelle vom benutzer

stimmen
7

Ich warf zusammen ein nuget-Paket, das eine msbuild Ziele Datei zu Ihrem Projekt hinzufügt. Es wird die tsc Compiler laufen und seine Ausgabe aufzuräumen, so dass Sie doppelt auf die Fehler in Visual Studio klicken und in die Datei / Zeile / Spalte springen.

https://www.nuget.org/packages/Sholo.TypeScript.Build

Sie müssen sich für alles, was die Build Action im Eigenschaften-Fenster zu ‚TypeScriptCompile‘ setzen, die Sie tsc kompilieren wollen. Von ein paar Tagen mit Typoskript bastelt, habe ich, dass die .ts Dateien gefunden, die die Referenzierung tun sollte TypeScriptCompile eingestellt werden, aber die Dateien, die nur Bezug genommen werden sollte nicht, aber ymmv. Außerdem müssen Sie alle Dateien anzeigen und die Original-JS-Datei hinzuzufügen. Wenn Sie, um verwandte .ts / js / .d.ts wollen Dateien zusammen, werfen Sie einen Blick auf die VsCommands Erweiterung. Workflow ist auch sehr schön mit NetDemon / ähnlichen Erweiterungen.

Beantwortet am 04/10/2012 um 01:55
quelle vom benutzer

stimmen
4

Wenn Sie mit Bündelung und Minifizierung habe ich soeben eine Implementierung von IBundleTransform das Typoskript zu Javascript erstellt. Es ist auf GitHub und NuGet (Install-Package TypeScriptBundleTransform). Wenn Sie noch nicht verwenden , Bündelung und Minifizierung ist es einen Blick wert!

Beantwortet am 07/10/2012 um 23:51
quelle vom benutzer

stimmen
3

aktualisieren:

Einfach installieren Web Essentials - 2012 - Plugin, werden Sie die automatische Zusammenstellung haben auf speichern - für beide Js und .min.js und eine saubere geteilte Ansicht der JavaScript - Ausgabe neben Ihrem Typoskript Code zu sehen.


Dies ist eine grobe Methode, die ich verwendet habe:

Recht auf Projekt> Eigenschaften> Build Events

Prebuild Feld einfügen diese (rekursiv alle .ts Dateien in Projekt-Builds):

forfiles /S /P $(ProjectDir) /m *.ts /c "cmd /c tsc @file"

Für spezifische Eintrag Datei Aufbau:

tsc $(ProjectDir)MyScripts/myfile.ts

Ich bin sicher, dass es ein besserer Weg, es zu tun.

Beantwortet am 02/10/2012 um 02:10
quelle vom benutzer

stimmen
0

Wenn Sie das verwenden Microsoft ASP.NET Web Optimization - Framework (auch bekannt als Bündelung und Minifizierung), dann versuchen , das verwenden Bundle Transformator mit installiertem Modul BundleTransformer.TypeScript . Neben die Erstellung von Typoskript-Code JS, können Sie auch minification des erzeugten JS-Code erzeugen durch die Verwendung andere Module des Bundle Transformators: BundleTransformer.MicrosoftAjax , BundleTransformer.Yui , BundleTransformer.Closure , BundleTransformer.JsMin , BundleTransformers. UglifyJs und BundleTransformer.Packer .

Beantwortet am 19/10/2012 um 17:43
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more