2008-10-21 3 views
9

Ruby on Rails에는 JavaScript를 생성하는 많은 방법이 있습니다. 특히 Ajax에 관해서. 불행히도, 내가 자주 생성하는 JavaScript에는 몇 가지 문제점이 있습니다.얼마나 많은 JavaScript를 사용하여 Rails를 생성합니까?

  • 레일은 일반적으로 인라인 이벤트 처리를 사용합니다.

    <a onclick="somejavascript(); return false;" /> 
    

    이것은 일반적으로 XHTML과 혼합 된 동작이므로 싫증납니다.

  • 생성 된 JavaScript는 또한 Prototype에 크게 의존합니다. 개인적으로 jQuery를 선호합니다.

  • 필자의 경험에 비추어 볼 때, 많은 레일스 개발자들의 태도는 최대한 많은 Ruby 코드를 작성하는 것이었다. 마지막 단계는 매우 절차 적이며 반복적 인 JavaScript를 생성하는 것입니다. 흔히이 코드는 매우 융통성이없고 디버깅하기가 어렵습니다.

내 질문은 : 얼마나 많은 JavaScript를 프로젝트에 수동으로 작성하고 얼마나 많은 양을 서버 측에서 Rails/Ruby로 생성 했습니까? 또는 두 가지의 이점을 누릴 수있는 행복한 매체가 있습니까? 하위 쿼리로 : 많은 JavaScript를 수동으로 작성하면 MVC 모델에 어떤 기술을 사용합니까?

답변

5

jQuery를 선호하는 경우 jQuery on Rails Project을 사용할 수 있습니다. Prototype을 jQuery로 바꾸기.

레일즈가 자바 스크립트 세대에서하는 일 중 일부는 좋고 일부는 나쁘다. 나쁜 경우에는 직접 쓰고 눈에 잘 띄지 않게하십시오. Javascript Rails가 생성 할 때마다 불편할 때마다 직접 작성하고 직접 작성할 수 있습니다.

레일스를 염두에두고 작성한 unobtrusive Javascript의 훌륭한 소개를 확인하십시오.

0

레일을 가능한 한 많이 보자. 그런 다음 문제가 발생하면 직접 코드화 된 버전으로 다시 작성하십시오.

0

없음, 필요한 경우 jquery를 사용하십시오. Ajax와 ie js 버그는 추적하기가 어렵습니다.

4

저는 Symfony (Rails 클론)에서 작업하던 중 처음에는 많은 Javascript 헬퍼를 사용했습니다. 클라이언트 요구 사항으로 인해 우리는 도우미가 생성 할 수없는 많은 코드를 작성해야했습니다. 결국 필자는 도우미 을 전혀 사용하지 않기를 바란다고 결론을 내 렸습니다.

점진적 향상이 제 의견으로는 방법입니다. JavaScript를 사용하지 않고 작동하는 표준 친화적 인 HTML을 생성 한 다음 문서의 멋진 기능을 활용할 수 있습니다.

그런데 Prototype에서 jQuery로 전환했으며 다시 전환하고 싶지 않습니다! 제 생각에 jQuery는 점진적 향상에 더 적합합니다.

+0

CakePHP 도우미와 동일한 문제가있었습니다. jQuery에서 손 코딩을 훨씬 빠르고 쉽습니다. – Geoff

관련 문제