Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

204
Views
¿Puedo forzar la exportación predeterminada anónima?

Si tiene un archivo con el mismo nombre que la exportación predeterminada, ¿por qué necesita nombrar esta exportación? No estoy DRY allí.

Tenemos una regla para evitar la exportación anónima predeterminada , pero ¿cómo puedo hacer lo contrario y forzar un error cuando alguien no está usando una exportación anónima?

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Si tiene un archivo con el mismo nombre que la exportación predeterminada, ¿por qué necesita nombrar esta exportación?

tu no Es por eso que está vinculando a una regla de linter: no es obligatorio, pero algunos lo consideran "mejor práctica", porque

Asegurarse de que se nombren las exportaciones predeterminadas ayuda a mejorar la grepabilidad del código base al alentar la reutilización del mismo identificador para la exportación predeterminada del módulo en su sitio de declaración y en sus sitios de importación.

Básicamente, la gente piensa que si tienes

 export default () => { console.log('Hello'); }

las personas son más propensas a hacer

 import logHello from 'sayHello'; // file one import greeting from 'sayHello'; // file two import sayHello from 'sayHello'; // file three

pero eso si lo haces

 const sayHello = () => { console.log('Hello'); } export default sayHello

la gente hará más consistentemente

 import sayHello from 'sayHello';

lo que hace que el código sea más fácil de leer, porque la misma función se llama igual sin importar de dónde la importes.

cuando preguntas

como puedo forzarlo?

Supongo que quiere decir cómo puede obligar al linter a aceptar su exportación predeterminada anónima. Necesitaría deshabilitar en línea la regla:

 /* eslint import/no-anonymous-default-export: [2, {"allowArrowFunction": true}] */ export default () => {}

o actualice su configuración de eslint para aceptarla en general.

about 4 years ago · Juan Pablo Isaza Report

0

Si realmente desea tener una exportación predeterminada anónima aunque su linter lo impida, puede usar los comentarios para deshabilitar las reglas de eslint . Entonces, para su escenario, // eslint-disable-next-line import/no-anonymous-default-export debería funcionar. O puede modificar la configuración de eslint si desea deshabilitar esa regla en todas partes.

Pero debe leer la justificación para nombrar las exportaciones predeterminadas:

Asegurarse de que se nombren las exportaciones predeterminadas ayuda a mejorar la grepabilidad del código base al alentar la reutilización del mismo identificador para la exportación predeterminada del módulo en su sitio de declaración y en sus sitios de importación.

Para las clases exportadas en particular, otra cosa a considerar es que nombrar la clase exportada establecerá su constructor.name , lo que puede ser útil.

 const bar = class Foo {}; (new bar()).constructor.name; // 'Foo'
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!