2016-11-09 28 views
1

使用Rubocop時,它們指定在除插值以外的其他可能位置使用單引號而不是雙引號。那麼對於Rails應用程序的觀點呢?在視圖中的類如下所示,html類的雙引號

<div class="row-fluid"> 
</div> 

這是否也應該更改爲單引號?這是否有任何性能變化?我只想知道爲什麼Rubocop更喜歡使用單引號而不是雙引號。

+2

每種語言都有自己的約定。 Rubocop基於僅適用於Ruby的[Ruby風格指南](https://github.com/bbatsov/ruby-style-guide)。 – Stefan

+0

那麼你對html的看法有什麼看法? –

+1

html不是Ruby。 –

回答

2

TL; DR

  1. Rubocop不關心觀點。
  2. HTML不是Ruby,因此在HTML中遵循Ruby約定甚至沒有意義。

如果這也可以改成單引號?

Rubocop不檢查視圖,所以它取決於您的偏好。

我只想知道爲什麼Rubocop傾向於使用單引號 而不是雙引號。

Today there is no performance difference使用單/雙引號時。

我認爲這只是一個品味問題。如果不需要雙引號(插值),我更喜歡使用單引號。它發生在opinion of the majority of active members of Ruby community

+0

那麼對於視圖呢?因爲視圖是由UI團隊設計的。他們通常會給我們雙引號課程的設計。 –

+0

@ShabiniRajadas正如我所說:Rubocop不檢查視圖,所以它的行長,雙引號等不一定遵循Ruby風格約定。爲什麼?因爲它甚至不是Ruby,而是html。所以在視圖中加雙引號時要冷靜。 –

+0

@ShabiniRajadas _「觀點是由UI團隊設計的」_ - 那麼你應該問UI團隊。 – Stefan

1
  1. 這不是廣泛遵循的慣例。例如,我會說你會在Rails中找到比單引號更多的雙引號簡單字符串(如果你排除了通常單引號的要求)。

  2. 這是我個人不喜歡的規則,因爲我通常不知道字符串是否需要特殊字符或插值(再次除了require)。例如:

    raise ArgumentError, 'Expected a string' 
    

    以後可以成爲:

    raise ArgumentError, "Expected a string, got #{some_arg}" 
    

    我不喜歡不得不改變單引號雙引號。

  3. 我不認爲有這麼多的規則可以獲得。如果有規則,那麼我會說比較喜歡單引號字符串的字符串,不應該有特殊字符或內插(像要求的文件一樣),但對於其他所有內容,我認爲它應該是個人選擇政策,例如只有在需要時才加雙引號,或者相反,只有在需要時(我的偏好),纔有意義。

+0

問題是關於HTML標記,而不是Ruby代碼。 – Stefan

+0

嗨@Stefan,實際上它有助於進一步理解。 –

+1

儘管@shabini也應該添加HTML。 –