Tslint: рдиреЛ-рд╕реНрд╡рд┐рдЪ-рдХреЗрд╕-рдлреЙрд▓-рдереНрд░реВ рдиреЗрд╕реНрдЯреЗрдб рд╕реНрд╡рд┐рдЪ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдкрд░ рдлреЗрдВрдХрд╛ рдЧрдпрд╛ рдЬрд╣рд╛рдВ рдЖрдВрддрд░рд┐рдХ рд╕реНрд╡рд┐рдЪ рдХреЗ рд╕рднреА рдорд╛рдорд▓реЛрдВ рдореЗрдВ рд░рд┐рдЯрд░реНрди рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рд╣реЛрддрд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 2 рд╕рд┐рддре░ 2016  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: palantir/tslint

рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ

  • TSLint рд╕рдВрд╕реНрдХрд░рдг : 3.2.0
  • рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдВрд╕реНрдХрд░рдг : 1.8.10
  • TSLint рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЪрд▓ рд░рд╣рд╛ рд╣реИ : Node.js API

    рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛрдб рдкрдВрдХреНрддрд┐рдмрджреНрдз рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ

function foo (a: number, b: number): number {
    switch (a) {
        case 1:
            switch (b) {
                case 2:
                    return 1;
                default:
                    return 2;
            }
        default:
            return 3;
    }
}

tslint.json рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд╕рд╛рде:

(include if relevant)

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡реНрдпрд╡рд╣рд╛рд░

рдмрд╛рд╣рд░реА рд▓реВрдк рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЗрд╕ рд╕реЗ рдкрд╣рд▓реЗ рдиреЛ-рд╕реНрд╡рд┐рдЪ-рдХреЗрд╕-рдлреЙрд▓-рдереНрд░реВ рд▓рд╛рдЗрди рдкрд░ рдлреЗрдВрдХрддрд╛ рд╣реИред

рдЕрдкреЗрдХреНрд╖рд┐рддреН рд╡реНрдпрд╡рд╣рд╛рд░

рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдЗрд╕реЗ рдлреЗрдВрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдиреЗрд╕реНрдЯ рдХрд░рдиреЗ рдХреА рднреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИред

function(a: number, b:number): void {
    switch (a) {
        case 1: {
            return;
        } // Throws
        case 2:
            return;
        default:
            return;
    }
}

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЙрд╕реА рдХреЗ рд▓рд┐рдП

function(a: number, b:number): void {
    switch (a) {
        case 1:
            if (b > 10) {
                return;
            } else {
                return;
            }
        case 2:
            return;
        default:
            return;
    }
}

рдЗрд╕реЗ рдлреЗрдВрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдиреЗрд╕реНрдЯ рдХрд░рдиреЗ рдХреА рднреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИред

function(a: number, b:number): void {
    switch (a) {
        case 1: {
            return;
        } // Throws
        case 2:
            return;
        default:
            return;
    }
}

рдпрд╣рд╛рдВ рд╡рд╣реА - no-switch-case-fall-through break/return рдЕрдВрджрд░ рдХреЗрд╕ рдмреНрд▓реЙрдХ case ... { ... } рдХреЛ рдирд╣реАрдВ рдкрд╣рдЪрд╛рдирддрд╛ рд╣реИред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

denkomanceski picture denkomanceski  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

CSchulz picture CSchulz  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ghost picture ghost  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ghost picture ghost  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

avanderhoorn picture avanderhoorn  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ