Tslint: La regla de punto y coma debe marcar los puntos y comas innecesarios en las funciones de los miembros de la clase

Creado en 11 ago. 2016  ·  8Comentarios  ·  Fuente: palantir/tslint

Cambiamos el comportamiento de la regla del punto y coma para permitir la omisión del punto y coma final después de las funciones de los miembros de la clase enlazada:

class Foo {
  public renderFoo = () => {
    return null;
  }
   ^ right here
}

Propongo que en realidad _prohibamos_ los puntos y comas en esa ubicación en TSLint 4.0. Podemos admitir la funcionalidad anterior con una nueva opción allow-bound-class-methods .

Easy P2 Fixed Breaking Change Enhancement

Comentario más útil

Para las personas que vienen a este hilo en busca de la configuración correcta de tslint (como lo hice yo), la sintaxis correcta para esto sería:
"punto y coma": [verdadero, "siempre", "ignorar métodos de clase vinculados"]

Ver: https://palantir.github.io/tslint/rules/semicolon/

Todos 8 comentarios

No estoy convencido de que esto sea necesario para 4.0, pero tampoco estaría de más tenerlo. Sin embargo, parece una opción de un minuto, no estoy del todo convencido de que valga la pena la complejidad adicional

Solo como un elemento de retroalimentación (¿no estoy seguro de si este es el lugar correcto?), Nos topamos con esto y nos sorprendió mucho.

Probablemente no entiendo muy bien la razón detrás de esto, pero en particular, que tslint marca los puntos y comas como innecesarios en esta posición (es decir, no acepta omitirlos) parece confuso.

Puede recuperar el comportamiento anterior con la opción ignore-bound-class-methods . Queríamos ser un poco más obstinados con la configuración predeterminada y hacer que los métodos de clase enlazada parecieran métodos de clase regulares en la mayoría del código TS.

Sí, me imaginé mucho. Hubiera esperado que tslint fuera de la caja requiriera ese punto y coma, errando más en el lado de la consistencia o ignorando el problema, pero agregar esa opción nuevamente funciona para nosotros.

Traté de hacer que esto dejara de arrojar errores en intellij

Intenté eliminar el punto y coma detrás de las funciones de flecha de clase, luego recibo esta advertencia:
image

Intenté habilitar la opción de esta manera:
image

Pero obtengo este resultado:
image

Intenté habilitar la opción de esta manera:
image

Pero luego deja de buscar puntos y comas todos juntos.

versión tslint: 4.4.2
versión ts: 2.1.5
versión inteligente: 2016.3
SO: windows 10 x64

Para las personas que vienen a este hilo en busca de la configuración correcta de tslint (como lo hice yo), la sintaxis correcta para esto sería:
"punto y coma": [verdadero, "siempre", "ignorar métodos de clase vinculados"]

Ver: https://palantir.github.io/tslint/rules/semicolon/

@popstr Sí, eso es lo que estoy usando también.

"semicolon": [true, "always", "ignore-bound-class-methods"]

He creado #3216 porque ignorar es una mala idea en términos de consistencia, y la regla sin la opción ignore-bound-class-methods todavía tiene errores , como descubrí.

¿Fue útil esta página
0 / 5 - 0 calificaciones