La propuesta de inicializadores de propiedad de clase de etapa 0 de Jeff Morrison llena el vacío de composición de propiedad en clases.
Actualmente cuando se usa:
class Person {
firstName = 'John'; // jshint error 'Unexpected token ='
static lastName = 'Doe';
}
console.log(new Person().firstName); // "John"
console.log(Person.lastName); // "Doe"
¿Algún plan para admitir dicha función? ¿O quizás me estoy perdiendo una opción? ¡Gracias!
No sería prudente que JSHint se comprometiera a respaldar las propuestas de la etapa 0.
Puede evitar el error demarcando las porciones no estándar con ignoreDelimiter
:
class Person {
//start-non-standard
firstName = 'John';
static lastName = 'Doe';
//end-non-standard
}
.jshintrc
...
ignoreDelimiters: [
{ start: "start-non-standard", end: "end-non-standard" },
],
esnext: true
...
@rwaldron gracias!
@voronianski ¡de
Ahora está en la etapa 1: https://github.com/jeffmo/es-class-static-properties-and-fields
Sé que aún no está muy lejos, ¡pero me encantaría usar esto sin ensuciar mi código con no estándares de inicio en cada clase!
@hackel En el tiempo transcurrido desde que se realizó esta solicitud de función, hemos formalizado nuestros requisitos para las nuevas funciones de idioma:
http://jshint.com/blog/new-lang-features/
Estaremos encantados de aceptar parches una vez que la propuesta de "propiedades de clase" alcance la etapa 2.
Solo una actualización, ahora está en la etapa 2: https://github.com/tc39/proposals. ¿Quizás es hora de reabrir este problema?
Ahora que esta propuesta ha llegado a la etapa 2, he creado un problema para realizar un seguimiento del soporte dentro de JSHint. Consulte gh-3139.
Comentario más útil
Solo una actualización, ahora está en la etapa 2: https://github.com/tc39/proposals. ¿Quizás es hora de reabrir este problema?