TypeScriptCompile budować działań wydaje się nie robić nic

głosy
13

Kiedy dodać nowy plik maszynopis do mojego rozwiązania, system ładnie daje mi (ampułko) plik .ts z pliku js tuż poniżej. Taka konfiguracja sprawia, że ​​myślę, że konwersja z maszynopis do JavaScript jest automatyczna. To założenie jest wzmocniona przez fakt, że plik .ts ma działanie build „TypeScriptCompile”. Jednak niezależnie od tego, co robię (zapisać zmienionego ts, skompilować projekt ...) nic się nie dzieje.

Wiem, że mogę dodać prebuild kroki do projektu, ale naprawdę chciałbym działania TypeScriptCompile build automatycznie kopać tak, że wystarczy, aby zapisać plik na plik js być regenerowane. Co muszę zrobić, aby „” z TypeScriptCompile działa zgodnie z oczekiwaniami / pożądane?

Utwórz 02/10/2012 o 10:41
źródło użytkownik
W innych językach...                            


5 odpowiedzi

głosy
9

Miałem ten sam problem, gdy próbuje użyć maszynopis w projekcie MVC4, ale problem został rozwiązany!

Umieścić poniższe linie do pliku projektu za pomocą dowolnego edytora tekstu. Jest wykomentowane BeforeBuildsekcja zwykle już tam na końcu pliku proj, który można zastąpić tymi liniami. Odśwież projekt i jesteś dobry, aby przejść. W .js zostanie wygenerowane podczas kompilacji.

<Target Name="BeforeBuild">
  <Exec Command="&quot;$(PROGRAMFILES)\Microsoft SDKs\TypeScript\0.8.0.0\tsc&quot; @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" />
</Target>

Przyjrzyj się dokładnie w ścieżce choć może się różnić (np jeśli masz inną wersję maszynopisu SDK). Podobnie, jeśli tsc.exejest już w PATHzmiennej środowiskowej, można użyć polecenia version-agnostyk:

<Target Name="BeforeBuild">
  <Exec Command="&quot;tsc&quot; @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" />
</Target>

Wreszcie, jak zauważył w komentarzach, może chcesz dodać -c zachować komentarze do wiersza poleceń. Pozwala to narzędzia, takie jak kasety & zasobu ASP.NET za łączenie pobrać odniesień i czyni rzeczy we właściwej kolejności.

Odpowiedział 02/10/2012 o 15:10
źródło użytkownik

głosy
1

Jeśli nadal masz problemy z kompilowania plików maszynopisu , może chcesz sprawdzić aplikację po prostu zwolniony. Można skompilować pliki z zaledwie 1 kliknięciem.

Odpowiedział 25/10/2012 o 17:37
źródło użytkownik

głosy
1

Kilka osób miało ten problem, w tym ja. Rozwiązaniem jest ręcznie zainstalować rozszerzenie wizualne maszynopis studio .

Instalator jest tutaj:

"C: \ Program Files (x86) \ Microsoft SDK \ maszynopis \ 0.8.0.0 \ TypeScriptLanguageService.vsix"

lub tutaj na maszynach x86:

"C: \ SDK Program Files \ Microsoft \ maszynopis \ 0.8.0.0 \ TypeScriptLanguageService.vsix"

Odpowiedział 02/10/2012 o 20:38
źródło użytkownik

głosy
0

Jeśli używasz Visual Studio 2013 z najnowszej maszynopis 1.5, może być konieczne zainstalowanie narzędzia maszynopis dla Visual Studio . Ja również polecam zainstalować Essentials Web , który będzie wywoływał .TS kompilację pliku skryptu na Save (oprócz wielu innych innych przydatnych funkcji).

Następnie wykonaj kroki Visual Studio sprawia, że ​​dla nowych projektów internetowych w .csproj pliku.

1) właściwości importu MSBuild Typescript dodając następujący element mocy głównego Projectelementu:

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props')" />

2) importu MSBuild Typescript budowy cel

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets')" />

3) wersja Konfiguracja cel Typescript pod Project/PropertyGroupelementem

<TypeScriptToolsVersion>1.5</TypeScriptToolsVersion> 
Odpowiedział 28/08/2015 o 11:19
źródło użytkownik

głosy
0

Ok, mam ponownie zainstalować wszystko, łącznie z plikiem vsix. Podobno kiedy „run” mój projekt teraz, plik .ts zostanie automatycznie przekształcony w pliku .js (bez zwyczaj budowania działań). To jest ok do teraz. Byłoby lepiej, gdyby te pliki śledzić inne generatory kodu w tym, że kiedy skompilować plik źródłowy zostanie zapisany. Chciałbym napisać własną implementację SingleFileGenerator dla niego, ale nie wiem jeszcze, jak wywołać Js z C #.

Odpowiedział 07/10/2012 o 10:44
źródło użytkownik

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