space-before-keywords (Rules) – Eslint 中文开发手册

[
  •   Eslint 中文开发手册

    space-before-keywords (Rules) - Eslint 中文开发手册

    此规则在ESLint v2.0中已删除,并由关键字间距规则取代。

    在--fix命令行上选择自动修复此规则报告的问题。

    关键字是JavaScript的语法元素,例如function和if。这些标识符对语言有特殊意义,因此在代码编辑器中经常以不同的颜色显示。作为语言的重要组成部分,风格指南通常指的是围绕关键词使用的空格。例如,您可能有一个样式指南,指出关键字应始终以空格开头,这意味着if-else语句必须如下所示:

    if (foo) {
        // ...
    } else {
        // ...
    }

    当然,你也可以有一个风格指南,禁止关键字之前的空格。

    规则细节

    此规则将强制间隔的一致性的关键字之前if,else,for,while,do,switch,throw,try,catch,finally,with,break,continue,return,function,yield,class和变量声明(let,const,var)和标签语句。

    这条规则有一个参数:"always"或"never"。如果"always"那么关键字必须至少有一个空格。如果"never"在关键字之前没有空格else,while(do ... while)finally和catch。默认值是"always"。

    此规则将允许关键字前面加上大括号({)。如果您想改变这种行为,请考虑使用块间距规则。

    此规则的默认代码错误代码示例"always":

    /*eslint space-before-keywords: ["error", "always"]*/
    /*eslint-env es6*/
    
    if (foo) {
        // ...
    }else {}
    
    const foo = 'bar';let baz = 'qux';
    
    var foo =function bar () {}
    
    function bar() {
        if (foo) {return; }
    }

    具有默认选项的此规则的正确代码示例"always":

    /*eslint space-before-keywords: ["error", "always"]*/
    /*eslint-env es6*/
    
    if (foo) {
        // ...
    } else {}
    
    (function() {})()
    
    <Foo onClick={function bar() {}} />
    
    for (let foo of ['bar', 'baz', 'qux']) {}

    此规则的错误代码示例包含以下"never"选项:

    /*eslint space-before-keywords: ["error", "never"]*/
    
    if (foo) {
        // ...
    } else {}
    
    do {
    
    }
    while (foo)
    
    try {} finally {}
    
    try {} catch(e) {}

    此规则的正确代码示例包含以下"never"选项:

    /*eslint space-before-keywords: ["error", "never"]*/
    
    if (foo) {
        // ...
    }else {}
    
    do {}while (foo)
    
    try {}finally {}
    
    try{}catch(e) {}

    何时不使用

    如果您不希望强化关键字间隔的一致性。

    相关规则

    space-after-keywordsblock-spacingspace-return-throw-casespace-unary-opsspace-infix-ops

    版本

    此规则在ESLint 1.4.0中引入,并在2.0.0-beta.3中删除。

    资源

    Documentation source

  •   Eslint 中文开发手册
    ]
    转载请保留页面地址:https://www.breakyizhan.com/javascript/34590.html
    原文地址:https://www.cnblogs.com/breakyizhan/p/13238146.html