2014-01-25 2 views
0

나는 '홈페이지'방법으로 간단한 PagesController가 있습니다. 방금 ​​내 homepage.js.erb 템플릿 파일에 응답하는 방법을 원합니다 console.log("Hello World!"); 그래서 내 홈페이지 메서드에 respond_to do |format| format.js format.html end 을 썼습니다.하지만 아무것도하지 않습니다. (나의 크롬 콘솔의 어떤 hello world). format.html 레일을 제거하면이 오류가 발생합니다. "ActionController::UnknownFormat".레일 4 respond_to javascript

터보 링크에는 문제가 있습니까? 내가 어떻게 할 수 있니?

감사 JD

답변

0

Turbolinks HTML로 요청을 전송, 그래서 JS 파일은 늘 렌더링 얻을하지만 HTML 하나는 클라이언트 측 turbolinks에 그냥 새로운 콘텐츠 및 업데이트 URL과 함께 몸을 대체합니다.

js.erb 파일을 렌더링하려면 html이 아닌 js 요청을 시작해야합니다. link_to에 remote true를 써주세요. 당신이 HTML 요청에 대한 브라우저 JS 코드를 실행하려면

= link_to 'XYZ', url, :remote => true 

은 또는 당신은 (format.html)를 HTML 파일 내부에 자바 스크립트 코드를 작성할 필요가

예 :

javascript: 
    console.log("Hello World!");