2012-08-07 3 views
0

ASP.NET MVC 4를 사용 중입니다. 면도기 뷰를 JavaScript로 컴파일하는 방법이 있는지 알고 싶습니다. 즉, JavaScript로 HTML을 만들고 싶습니다! 이렇게하면 컨트롤러가 요청에 따라 HTML 또는 JSON으로 응답 할 수 있으므로 대역폭 및 CPU 요구 사항을 최소화하고 각 클라이언트에 더 빨리 페이지를 제공 할 수 있습니다. 컴파일 옵션이 있습니까 (JavaScript로 컴파일하기 전에 HTML 도우미가 실제로 실행되었다고 상상해보십시오), 아니면 Razor 구문을위한 JavaScript 인터프리터가 있습니까?JavaScript로 Razor보기 컴파일/해석

+0

나는 통역사가 있다고 생각하지 않지만 이것을 사용할 수 있습니다 : http://stackoverflow.com/questions/3234003/render-view-programmatically-into-a-string – Matthew

+0

이것은 목적을 이길 것입니다 . 대역폭 및 CPU주기를 줄여서 서버 쪽 대신 HTML 클라이언트 쪽을 생성합니다. –

+0

그리고 클라이언트가이 cshtml을 얻는다고 어떻게 생각하십니까? – dantix

답변

0

면도기보기를 자바 ​​스크립트로 컴파일하는 프로젝트는 현재 RazorClientTemplates입니다.

백본과 함께 MVC 3 프로젝트에서 사용합니다. 작동하지만 코드 블록 및 HTML 도우미에 대한 지원은 매우 제한적입니다.

+0

들어와 주셔서 감사합니다. –

0

JavaScript에는 Razor 자체를 사용할 방법이 없지만 여러 가지 JavaScript 템플릿 및 MVVM 엔진이 있습니다.

살펴 보자

  • KnockoutJS
  • EmberJS
  • 불행하게도, 이것은 단지 재사용보다 더 복잡하다 (대부분의 MVVM 엔진을 기반으로 템플릿 엔진)

    +0

    MVVM을 찾고 있지 않지만 Handlebars (기본적으로 Mustache입니다. ASP.NET MVC에서도이 핸들러를 사용할 수 있음)를 알고 있습니다. 스파크는 인터프리터가 아니라 실제 컴파일러이기 때문에 더 나을 가능성이 큽니다. 그래도 Razor를 사용하려고합니다. –

    +0

    그러면 Javascript를 위해 면도기를 요구하는 것보다 더 잘 알아야합니다. 기본적으로 헬퍼와 그 일종의 강력하게 형식화 된 언어입니다. 누군가 시도 했더라도 클라이언트 쪽에서 모든 것을 할 수는 없습니다. Spark에 대해서는 전혀 들키지 않지만 클라이언트 측에서 작동하는 경우 어떻게 실제 컴파일러가 될 수 있는지 알지 못합니다. –

    +0

    아이디어는 Razor 템플릿을 가져 와서 헬퍼를 실행하고 반환 할 HTML 문자열을 작성하는 동안 JavaScript 구문을 사용하도록 제어 흐름을 변경하는 것입니다. 이것은 자바 스크립트로 컴파일 된 뷰이며, 브라우저에서 실행되는 의존성 및 순수 JS가 아닙니다. 반면에 인터프리터는 컴파일 된 뷰가 실제 템플릿을 필요로합니다. 많은 뷰 엔진이 편집 할 수 있습니다. 왜 Razor가 그런 종류의 것을 가지고 있는지 혼란스러워합니다. –