Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

322
Visualizações
¿Por qué se aplica una regla eslint contra la persona que llama? (nueva gorra)

Configuré eslint con el estilo de Google y encontré el siguiente código marcado con new-cap :

 import {Deserialize} from 'cerialize'; //... const someVar = Deserialize(someJson, someType);

ingrese la descripción de la imagen aquí

Bueno, la noción tiene sentido, eslint quiere que sea camelCased. Pero ese es un código de terceros y realmente no tengo una buena solución contra él.

  1. No quiero deshabilitar la regla de límite nuevo globalmente porque estoy dispuesto a aplicar esa regla en mi código.
  2. No quiero // eslint-disable-next-line cada llamada a esa función, porque se siente bastante tonto.
  3. Ni a alias cada importación por la misma razón: import {Deserialize as deserializeFunc} from 'cerialize';

La pregunta fundamental es, ¿por qué se compara la regla con la persona que llama? Mi código no parece tener la culpa, es un destinatario de otra biblioteca que no sigue esa regla de nomenclatura. Por supuesto, ni siquiera es su responsabilidad porque el autor de esa biblioteca podría estar usando otro estilo de codificación.

¿Eslint está diseñado para obligarme a prohibir las bibliotecas que no tienen el mismo estilo? ¿O hay alguna solución u opciones que me faltan?

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Está diseñado para que arregles tu código si tienes el control de la exportación. El linter no es lo suficientemente inteligente como para determinar si lo hace o no, por lo que se equivoca al pedirle que lo arregle si puede.

En este caso, no controla esa biblioteca, por lo que debe agregar una excepción para Deserialize (y cualquier otra importación similar con nombres en mayúsculas extrañas).

 "new-cap": ["error", { "capIsNewExceptions": ["Deserialize"] }]
about 4 years ago · Juan Pablo Isaza Relatório

0

Esta regla básicamente se copia de JSHint para compatibilidad con las guías de estilo existentes. Esto vino de antes de ESM, por lo que no había forma de saber si algo era código de biblioteca o no.

( https://github.com/eslint/eslint/discusiones/15722#discusióncomentario-2434062 )

Resulta que este no era un diseño previsto, sino una limitación de una regla de linter anterior al ESM.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda