2011-05-10 54 views
2

在Rails,對頁面特定的JavaScript常見的成語是:的Javascript,Rails的意見,content_for和乾燥

(佈局)

<head> 
    <% yield :javascript %> 
</head> 

(圖)

<% content_for :javascript do %> 
    <script type="text/javascript"> 
    $().whatever; 
    </script> 
<% end %> 

我恨重複腳本標籤。有什麼理由爲什麼以下是一個壞主意?

(佈局)

<head> 
    <script type="text/javascript"> 
    <% yield :javascript %> 
    </script> 
</head> 

(圖)

<% content_for :javascript do %> 
    $().whatever; 
<% end %> 
+0

你可以把''

2

成語是巨大的,所有的,但最重要的是你和你的團隊的生產率並保持事物的能力,如果你好吧,我也沒有看到任何問題。也就是說,我之前完成了這個任務,並且還在項目中看到了它,但現在我通常會將其放在腳本文件中,除非我必須在特定頁面中使用它。

+1

我同意。我會把它放在一個whatever.js文件中,並且:<%content_for:javascript do - %><%= javascript_include_tag'whatever'%><% end -%>' – Mischa 2011-05-10 15:02:38

+0

但是AIUI不能渲染.html的.js視圖, ?您仍然必須將其稱爲.html.erb?出於某種原因,這真的讓我感到不安。 – 2011-05-10 15:36:47

1

如果你想簡化你的觀點,我強烈推薦HAML(它是姐姐SASS的CSS)。有一點點的學習曲線,你可能不想立即轉換你現有的所有觀點,但我懷疑你是否會想回到醜陋的ERB。

在HAML,這看起來像:

= content_for :head do 
    :javascript 
    $().whatever;