簡體   English   中英

eslint 中是否有拒絕“分配,然后返回”模式的規則?

[英]Is there a rule in eslint to deny "assign, then return" pattern?

我想拒絕在代碼中使用以下模式:

function do_something_bad() {
    // bad
    const x = do_something_else();
    return x;
}

function do_something_good() {
    // good
    return do_something_else();
}

它對我來說看起來很奇怪,純粹是風格問題,所以 eslint 應該是處理它的好方法(我願意接受建議,任何其他 linter 也可以,我只是配置了 eslint,所以問問它)。 有沒有我可以安裝/啟用的規則(或者插件)只需要“好”選項?

對於背景,我主要是 python 人,它的靈感來自flake8 R504(來自flake8-return插件)錯誤。 它也存在於tslint Microsoft extensions中,但它們是“存檔的和只讀的”(規則no-unnecessary-local-variable )。

經過一些研究后,我發現“sonarjs” ESLint 插件具有針對這種情況prefer-immediate-return規則(默認情況下啟用)。 使用此插件運行 eslint 會揭示所有此類用法(以及一些其他樣式缺陷)。

(我與這個插件沒有任何關系)

暫無
暫無

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

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