簡體   English   中英

Sonarqube Javascript規則“函數名稱應符合命名約定”不適用於變量中聲明的函數

[英]Sonarqube Javascript rule “Function names should comply with a naming convention” doesn't work with functions declared in variables

我幾天前開始使用Sonarqube,但我對Javascript規則有一個疑問“ 函數名稱應符合命名約定 ”。

我的一些開發人員不尊重命名函數的命名約定,大多數時候他們定義這樣的函數:

onTextfieldChange1111111: function(field, newValue, oldValue, eOpts) {
...
}

看起來這個方法不會觸發規則“函數名稱應符合命名約定”。

這是一個特定的配置嗎? 或者是否有其他規則來檢查這個?

此特定Sonarqube規則使用正則表達式來檢查函數名稱。 默認情況下,它使用此表達式:

^[a-z][a-zA-Z0-9]*$

問題中的函數名稱與此正則表達式匹配。 如果要檢查其他內容,可以自己更改默認正則表達式。 (您可能必須以管理員身份登錄才能更改默認設置)。

我認為這個特殊規則僅適用於定義為的函數

function thisIsMyFunction()

而不是定義為變量的函數。 AFAIK沒有Sonarqube規則來檢查后者。 實際上甚至還有一個Sonarqube規則,它鼓勵開發人員將函數定義為變量(如果它們是在代碼塊中定義的)(請參閱“ 不應在塊內執行函數聲明 ”的JavaScript規則)

我知道你可以編寫並添加你自己的Sonarqube規則 ,但我自己也沒有經驗。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM