TypeScriptCompile construi acțiunea nu pare să facă nimic

voturi
13

Când am adăuga un nou fișier typescript la soluția mea, sistemul frumos dă-mi un (preumpluta) fișier cu codurile .js TS fișier chiar mai jos. Această configurație mă face să cred că conversia de la typescript JavaScript este automată. Această ipoteză este întărită de faptul că fișierul are o acțiune TS Build „TypeScriptCompile“. Cu toate acestea, indiferent de ceea ce fac (a salva modificate ts, compila proiectul ...), nimic nu se întâmplă cu adevărat.

Știu că pot adăuga pași prebuild la proiect, dar mi-ar place foarte mult acțiunea TypeScriptCompile construi pentru a lovi cu piciorul în mod automat, astfel încât am nevoie doar pentru a salva fișierul pentru fișierul js care urmează să fie regenerat. Ce trebuie să fac pentru a face „TypeScriptCompile“ de la lucru cum era de așteptat / dorit?

Întrebat 02/10/2012 la 10:41
sursa de către utilizator
În alte limbi...                            


5 răspunsuri

voturi
9

Am avut aceeași problemă atunci când încearcă să utilizeze typescript într-un proiect MVC4, dar a rezolvat problema!

Pune următoarele linii în fișierul de proiect utilizând editorul de text preferat. Există o comentat BeforeBuildsecțiune , de obicei , deja acolo , la sfârșitul fișierului proj, pe care îl puteți înlocui cu aceste linii. Reîncărcați proiectul și vă sunt bune pentru a merge. Fișierele Js vor fi acum generate în timpul compilării.

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

Uită - te bine la calea exactă , deși, aceasta poate fi diferită ( de exemplu , dacă aveți o versiune diferită a typescript SDK). În mod similar, în cazul în care tsc.exee deja în PATHvariabila de mediu, puteți utiliza o comandă-versiune agnostic:

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

În cele din urmă, după cum sa menționat în comentariile, ați putea dori să adăugați -c pentru a păstra comentariile la linia de comandă. Acest lucru permite instrumente cum ar fi casete & resurse asp.net lui pentru a prelua gruparea referințele și fac lucrurile în ordinea corectă.

Publicat 02/10/2012 la 15:10
sursa de către utilizator

voturi
1

Dacă aveți în continuare probleme compilarea fișierelor typescript , ar putea să doriți să verificați o aplicație am eliberat. Puteți compila fișierele cu doar un clic de buton.

Publicat 25/10/2012 la 17:37
sursa de către utilizator

voturi
1

Câțiva oameni au avut această problemă, inclusiv eu. Fix este de a instala manual dactilografiat extensia de studio vizual .

Programul de instalare este aici:

"C: \ Program Files (x86) \ Microsoft SDK-uri \ typescript \ 0.8.0.0 \ TypeScriptLanguageService.vsix"

sau aici, pe masini x86:

"C: \ Program Files SDK-uri \ Microsoft \ typescript \ 0.8.0.0 \ TypeScriptLanguageService.vsix"

Publicat 02/10/2012 la 20:38
sursa de către utilizator

voturi
0

Dacă utilizați Visual Studio 2013 , cu cele mai recente typescript 1.5, poate fi necesar să instalați instrumente typescript pentru Visual Studio . De asemenea , am recommed pentru a instala Essentials Web , care va invoca compilare fișier script TS pe Salvare ( pe langa multe alte caracteristici utile).

Apoi, urmați pașii Visual Studio face pentru noi proiecte web în .csproj fișier.

1) Proprietăți de import MSBuild dactilografiat prin adăugarea elementului următor sub rădăcină Projectelementului:

<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) Import MSBuild typescript construi tinta

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

3) versiunea Configurare țintă typescript sub Project/PropertyGroupelementul

<TypeScriptToolsVersion>1.5</TypeScriptToolsVersion> 
Publicat 28/08/2015 la 11:19
sursa de către utilizator

voturi
0

Ok, am reinstalat totul, inclusiv fișierul vsix. Se pare că atunci când am „alerga“ proiectul meu acum, fișierul este convertit automat TS într-un fișier .js (fără a construi personalizate acțiuni). Asta e în regulă acum. Ar fi fost mai bine dacă aceste fișiere urmează alte generatoare de cod în care acestea compila atunci când fișierul sursă devine salvat. Aș scrie propria mea implementare SingleFileGenerator pentru ea, dar eu încă nu știu cum să sun codurile .js de la c #.

Publicat 07/10/2012 la 10:44
sursa de către utilizator

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