zoukankan      html  css  js  c++  java
  • space-before-blocks (Rules) – Eslint 中文开发手册

    [
  •   Eslint 中文开发手册

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

    在--fix命令行上的选项可以自动修复一些被这条规则反映的问题。

    一致性是任何风格指南的重要组成部分。虽然个人喜好在哪里放置块的大括号,它应该在整个项目中保持一致。使用不一致的风格会使读者无法看到代码的重要部分。

    规则细节

    此规则将强化块之前的间距一致性。它只适用于不以新行开始的块。

    此规则忽略介于=>和块之间的间距。间距由arrow-spacing规则处理。此规则忽略关键字和块之间的间距。间距由keyword-spacing规则处理。

    选项

    这条规则有一个参数。如果是的"always"话,块必须至少有一个先前的空间。如果"never"那么所有的块都不应该有前面的空间。如果功能块,关键字块和类需要不同的间距,则可以将一个可选配置对象作为规则参数进行传递,以分别配置这些情况。

    ( e.g. { "functions": "never", "keywords": "always", "classes": "always" } )

    默认是"always"。

    “always”

    使用“always”选项的此规则的代码不正确的示例:

    /*eslint space-before-blocks: "error"*/
    
    if (a){
        b();
    }
    
    function a(){}
    
    for (;;){
        b();
    }
    
    try {} catch(a){}
    
    class Foo{
      constructor(){}
    }

    带有“always”选项的此规则的正确代码示例:

    /*eslint space-before-blocks: "error"*/
    
    if (a) {
        b();
    }
    
    if (a) {
        b();
    } else{ /*no error. this is checked by `keyword-spacing` rule.*/
        c();
    }
    
    
    function a() {}
    
    for (;;) {
        b();
    }
    
    try {} catch(a) {}

    “never”

    使用“never”选项的此规则的代码不正确的示例:

    /*eslint space-before-blocks: ["error", "never"]*/
    
    if (a) {
        b();
    }
    
    function a() {}
    
    for (;;) {
        b();
    }
    
    try {} catch(a) {}

    使用“never”选项的此规则的正确代码示例:

    /*eslint space-before-blocks: ["error", "never"]*/
    
    if (a){
        b();
    }
    
    function a(){}
    
    for (;;){
        b();
    }
    
    try{} catch(a){}
    
    class Foo{
      constructor(){}
    }

    此规则配置时代码不正确的示例{ "functions": "never", "keywords": "always", "classes": "never" }:

    /*eslint space-before-blocks: ["error", { "functions": "never", "keywords": "always", "classes": "never" }]*/
    /*eslint-env es6*/
    
    function a() {}
    
    try {} catch(a){}
    
    class Foo{
      constructor() {}
    }

    配置时对此规则的正确代码示例{ "functions": "never", "keywords": "always", "classes": "never" }:

    /*eslint space-before-blocks: ["error", { "functions": "never", "keywords": "always", "classes": "never" }]*/
    /*eslint-env es6*/
    
    for (;;) {
      // ...
    }
    
    describe(function(){
      // ...
    });
    
    class Foo {
      constructor(){}
    }

    此规则配置时代码不正确的示例{ "functions": "always", "keywords": "never", "classes": "never" }:

    /*eslint space-before-blocks: ["error", { "functions": "always", "keywords": "never", "classes": "never" }]*/
    /*eslint-env es6*/
    
    function a(){}
    
    try {} catch(a) {}
    
    class Foo {
      constructor(){}
    }

    配置时对此规则的正确代码示例{ "functions": "always", "keywords": "never", "classes": "never" }:

    /*eslint space-before-blocks: ["error", { "functions": "always", "keywords": "never", "classes": "never" }]*/
    /*eslint-env es6*/
    
    if (a){
      b();
    }
    
    var a = function() {}
    
    class Foo{
      constructor() {}
    }

    此规则配置时代码不正确的示例{ "functions": "never", "keywords": "never", "classes": "always" }:

    /*eslint space-before-blocks: ["error", { "functions": "never", "keywords": "never", "classes": "always" }]*/
    /*eslint-env es6*/
    
    class Foo{
      constructor(){}
    }

    配置时对此规则的正确代码示例{ "functions": "never", "keywords": "never", "classes": "always" }:

    /*eslint space-before-blocks: ["error", { "functions": "never", "keywords": "never", "classes": "always" }]*/
    /*eslint-env es6*/
    
    class Foo {
      constructor(){}
    }

    何时不使用

    如果您不关心块之前的间距一致性,则可以关闭此规则。

    相关规则

    keyword-spacingarrow-spacingbrace-style

    版本

    该规则在ESLint 0.9.0中引入。

    资源

    Rule sourceDocumentation source

  •   Eslint 中文开发手册
    ]
    转载请保留页面地址:https://www.breakyizhan.com/javascript/34584.html
  • 相关阅读:
    Watir and Selenium
    WebDriver 原理 (zhuan)
    Junit4 如何实现并发测试用例,及 Selenium Grid2 与 Junit4 结合进行并发测试。
    Excel: 如何知道 A列中的条目是否在 B 列中
    WebDriver如何工作 (zhuan)
    复习 多线程
    Way To Get Xpath From IE (forward)
    Eclipse 常用快捷键
    如何引入(调用)一个 js文件
    Wireshark 常见 filter (转)
  • 原文地址:https://www.cnblogs.com/breakyizhan/p/13263417.html
Copyright © 2011-2022 走看看