λ°μΈλ©λ ν΄λμ€ λ©€λ² ν¨μ λ€μ νν μΈλ―Έμ½λ‘ μ μλ΅ν μ μλλ‘ μΈλ―Έμ½λ‘ κ·μΉμ λμμ λ³κ²½νμ΅λλ€.
class Foo {
public renderFoo = () => {
return null;
}
^ right here
}
TSLint 4.0μ ν΄λΉ μμΉμ μ€μ λ‘ μΈλ―Έμ½λ‘ μ _ban_ν κ²μ μ μν©λλ€. μλ‘μ΄ μ΅μ
allow-bound-class-methods
μΌλ‘ μ΄μ κΈ°λ₯μ μ§μν μ μμ΅λλ€.
μ΄κ²μ΄ 4.0μ νμν κ²μΈμ§ νμ ν μ μμ§λ§, μ΄λ μͺ½λ λμ νλ κ²μ΄ λμμ§λ μμ κ²μ λλ€. μ½κ°μ μ΅μ μ²λΌ 보μ΄μ§λ§ 볡μ‘μ±μ μΆκ°ν κ°μΉκ° μλμ§ μμ ν νμ νμ§ λͺ»ν©λλ€.
νΌλλ°± νλͺ©μΌλ‘(μ΄ μ₯μκ° μ¬λ°λ₯Έμ§ νμ€νμ§ μμ΅λκΉ?), μ°λ¦¬λ μ΄κ²μ μ°μ°ν λ°κ²¬νκ³ λ§€μ° λλμ΅λλ€.
λλ μλ§λ μ΄κ² λ€μ μλ κ·Όκ±°λ₯Ό μ μ΄ν΄νμ§ λͺ»νκ² μ§λ§, νΉν tslintκ° μ΄ μμΉμμ μΈλ―Έμ½λ‘ μ λΆνμν κ²μΌλ‘ νμνλ€λ κ²(μ¦, μΈλ―Έμ½λ‘ μ κ·Έλ₯ λλλ κ²μ νμ©νμ§ μμ)μ΄ νΌλμ€λ¬μ 보μ λλ€.
ignore-bound-class-methods
μ΅μ
μ μ¬μ©νμ¬ μ΄μ λμμ λλ릴 μ μμ΅λλ€. μ°λ¦¬λ κΈ°λ³Έ ꡬμ±μ λν΄ μ’ λ μ견μ μλ ΄νκ³ λ°μΈλ©λ ν΄λμ€ λ©μλλ₯Ό λλΆλΆμ TS μ½λμμ μΌλ° ν΄λμ€ λ©μλμ²λΌ 보μ΄κ² λ§λ€κ³ μΆμμ΅λλ€.
κ·Έλ, λλ κ·Έλ κ² μκ°νλ€. tslint
κΈ°λ³Έμ μΌλ‘ μΈλ―Έμ½λ‘ μ΄ νμνκ±°λ μΌκ΄μ± μΈ‘λ©΄μμ μ€λ₯κ° λ λ§μ΄ λ°μνκ±°λ λ¬Έμ λ₯Ό 무μν κ²μΌλ‘ μμνμ§λ§ ν΄λΉ μ΅μ
μ λ€μ μΆκ°νλ©΄ μ°λ¦¬μκ² ν¨κ³Όμ μ
λλ€.
Intellijμμ μ€λ₯κ° λ°μνμ§ μλλ‘ νλ €κ³ νμ΅λλ€.
ν΄λμ€ νμ΄ν ν¨μ λ€μ μλ μΈλ―Έμ½λ‘ μ μ κ±°νλ €κ³ μλνλλ° λ€μ κ²½κ³ κ° νμλ©λλ€.
λ€μκ³Ό κ°μ΄ μ΅μ
μ νμ±ννλ €κ³ νμ΅λλ€.
κ·Έλ¬λ λλμ΄ κ²°κ³Όλ₯Ό μ»μ΅λλ€.
λ€μκ³Ό κ°μ΄ μ΅μ
μ νμ±ννλ €κ³ νμ΅λλ€.
κ·Έλ¬λ μΈλ―Έμ½λ‘ μ λͺ¨λ ν¨κ» νμΈνλ κ²μ μ€μ§ν©λλ€.
tslint λ²μ : 4.4.2
TS λ²μ : 2.1.5
μΈν
리 λ²μ : 2016.3
μ΄μ 체μ : μλμ° 10 x64
μ¬λ°λ₯Έ tslint ꡬμ±(λ΄κ° κ·Έλ¬λ κ²μ²λΌ)μ μ°Ύκ³ μλ μ΄ μ€λ λμ μ€λ μ¬λλ€μ μν΄ - μ΄μ λν μ¬λ°λ₯Έ ꡬ문μ λ€μκ³Ό κ°μ΅λλ€.
"μΈλ―Έμ½λ‘ ": [true, "νμ", "λ°μ΄λ ν΄λμ€ λ©μλ 무μ"]
@popstr λ€, μ λ μ¬μ©νκ³ μμ΅λλ€.
"semicolon": [true, "always", "ignore-bound-class-methods"]
무μνλ κ²μ μΌκ΄μ± μΈ‘λ©΄μμ μ’μ§ μμ μκ°μ΄κ³ ignore-bound-class-methods
μ΅μ
μ΄ μλ κ·μΉμ μ¬μ ν λ²κ·Έ κ° μκΈ° λλ¬Έμ #3216μ λ§λ€μμ΅λλ€.
κ°μ₯ μ μ©ν λκΈ
μ¬λ°λ₯Έ tslint ꡬμ±(λ΄κ° κ·Έλ¬λ κ²μ²λΌ)μ μ°Ύκ³ μλ μ΄ μ€λ λμ μ€λ μ¬λλ€μ μν΄ - μ΄μ λν μ¬λ°λ₯Έ ꡬ문μ λ€μκ³Ό κ°μ΅λλ€.
"μΈλ―Έμ½λ‘ ": [true, "νμ", "λ°μ΄λ ν΄λμ€ λ©μλ 무μ"]
μ°Έμ‘°: https://palantir.github.io/tslint/rules/semicolon/