IT이야기

기존 Asp에 형식 지정자를 추가하는 방법Net MVC 프로젝트?

cyworld 2022. 3. 26. 16:35
반응형

기존 Asp에 형식 지정자를 추가하는 방법Net MVC 프로젝트?

나는 타이프 뒤에 있는 아이디어를 좋아하지만, ASP에 어떻게 포함시킬지 알 수 없는 것 같아.Net MVC 프로젝트.Visual Studio 확장을 이미 설치했지만 추가 방법에 대한 예나 문서를 찾을 수 없는 것 같다.*.ts으로 컴파일되는 파일.*.js파일.

편집: 실제로 Win8 예제처럼 복제할 경우.jsproj포함 및 핸들.ts파일? 아니면 HTML/JS Win8 프로젝트에서만 사용할 수 있을까?

경고:이 답안 이후 Typecript와 MVC 둘 다 상당히 달라졌으므로, 이 답안은 이제 상당히 오래된 것이다.나중에 업데이트해 볼게 - 리치코더

대답해 준 소니에게 고마워.

Add > New Item 대화상자를 이용하여 기존 프로젝트에 TypeScript 파일을 추가할 수 있다. 예제이미지'유형 설명 파일' 항목은 웹 그룹 아래에 있지 않지만 이 경우 Visual C#의 상위 항목 아래에 있다는 점에 유의하십시오.

이것은 TypeScript 파일을 추가하고 나머지는 Visual Studio가 할 것이다.

그런 다음 다음 다음 행을 프로젝트 파일에 추가하십시오.

 <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>

나한테는 완벽하게 먹혔는데 혹시 무슨 문제가 생기면 코멘트해줘.

맞아. ms 빌드 타겟만 있으면 .ts 파일을 .js 파일로 만들 수 있어.Win8 예는 $(ProjectDir)***.ts(또는 프로젝트의 모든 .ts 파일)로 정의된 항목Group TypeScriptCompile에 속하는 모든 파일에 대해 tsc를 호출하는 beforeBuild 대상을 보여준다.

이패턴을 복제하는 것은 Win8 프로젝트뿐만아니라 msbuild 프로젝트에서도작동해야 한다.

여기 내가 말하는 것의 샘플이 있다:msbuild 프로젝트에 이 파일을 추가하십시오. 빌드가 시작될 때 .ts 파일을 equivialnt .js 파일로 컴파일하십시오.

<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>

니 프로젝트에 msbuild target 파일을 추가하는 nuget 패키지를 만들었어.tsc 컴파일러를 실행하고 출력을 정리하여 Visual Studio에서 오류를 더블클릭하고 파일/라인/칼럼으로 점프할 수 있도록 할 것이다.

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

tsc가 컴파일할 모든 항목에 대해 속성 창에서 빌드 작업을 'TypeScriptCompile'로 설정해야 한다.TypeScript로 며칠 동안 TypeScript를 땜질한 결과 참조를 하고 있는 .ts 파일을 TypeScriptCompile로 설정해야 하지만 참조만 되고 있는 파일은 그렇지 않고 ymmv여야 한다는 것을 알게 되었다.또한 모든 파일을 표시하고 원본 .js 파일을 추가해야 할 수도 있다.관련된 .ts/.js/.d.ts 파일을 그룹화하려면 VsCommands 확장자를 확인하십시오.워크플로우는 NetDemon/비슷한 확장 기능에서도 매우 유용하다.

Bundling과 Minification을 사용하고 있다면, 나는 방금 TypeScript를 Javascript에 컴파일하는 IBundleTransform의 구현을 발표했다.GitHub와 NuGet(Install-Package TypeScriptBundleTransform)에 있다.번들링과 미니화를 아직 사용하지 않았다면 한번 볼 만하다!

업데이트:

Web Essentials 2012 플러그인을 설치하기만 하면, 저장 시 .js 및 .min.js에 대한 자동 컴파일 및 TypeScript 코드 옆에 JavaScript 출력을 볼 수 있는 깔끔한 분할 보기가 제공된다.


이것은 내가 지금까지 사용해 온 조잡한 방법이다.

프로젝트 > 속성 > 빌드 이벤트 오른쪽 클릭

PreBuild 상자 붙여넣기(프로젝트에서 모든 .ts 파일을 반복적으로 빌드):

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

특정 항목 파일을 빌드하는 경우:

tsc $(ProjectDir)MyScripts/myfile.ts

나는 그것을 하는 더 좋은 방법이 있다고 확신한다.

만약 당신이 마이크로소프트 ASP를 사용하고 있다면NET Web Optimization Framework(Bundling 및 Minification이라고 함)를 설치한 다음 Bundle Transferon이 설치된 모듈과 함께 Bundle Transformer를 사용해 보십시오.TypeScript.JS에 대한 TypeScript-code의 컴파일 외에도, 번들 변압기의 다른 모듈을 사용하여 생성된 JS-code의 미니화를 생성할 수도 있다.번들트랜스포머.MicrosoftAjax, BundleTransformer.Yui, BundleTransformer. Yui, Bundle폐업, 번들트랜스포머.JsMin, 번들트랜스포머.UglifyJsBundleTransforn.패커.

참조URL: https://stackoverflow.com/questions/12680486/how-do-i-add-typescript-to-an-existing-asp-net-mvc-project

반응형