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

140
Visualizações
Webpack no puede resolver `require`s no js desde dentro de node_modules

Tengo un proyecto Next.js configurado para resolver las importaciones que terminan en .web.js . Esto funciona fuera de mi directorio node_modules. Hice esto configurando resolve.extensions = ['.web.js, '.js', '.jsx'] en la configuración de mi paquete web. Entiendo que esta configuración es responsable de resolver las importaciones que no tienen una extensión, por ejemplo, import _ from './component' , cuando existe ./component.web.js .

También tengo algunos node_modules que usan esta extensión .web.js . Son módulos privados, pero la idea se mantiene. Digamos que nuestros node_modules se ven así. Puede valer la pena señalar que estos módulos ya se han transpilado y, como tal, el uso require en lugar de import .

 - node_modules - @foo - bar.js - baz.web.js - baz.native.js

Ahora digamos que tenemos lo siguiente:

 // bar.js require("./baz");

Si trato de importar @foo/bar , la aplicación generará un error de módulo no encontrado en la línea require("./baz"); diciendo que no se puede encontrar. Si lo cambio a require("./baz.web.js") o elimino la línea por completo, entonces la aplicación funciona bien.

¿Por qué webpack puede hacer este tipo de resoluciones fuera de node_modules, pero no dentro del directorio? ¿Y cómo puedo decirle a webpack que también resuelva esas importaciones?

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

0

Dependiendo de la estrategia de resolución de su módulo, encontrará algunos archivos o no. Node.js resuelve los módulos como se describe aquí . Esto significa que require('./baz') se resuelve para solicitar /path/to/module/baz.js . Dado que su archivo en realidad no tiene nombre, no se encuentra. Puede usar require('./baz.web') en su lugar.

En cuanto a si Webpack puede manejar "automáticamente" qué importación usar, probablemente se deba a usar un complemento o tener algún tipo de lógica en bar.js para elegir entre baz.web y baz.native .

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