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

369
Visualizações
Overwrite or Overload a node_module name path

Assume i have a installed node_module called magicalModule and I have installed it via npm i magicalModule.

I import it into my code via const magic = require('magicalModule').

Is there a way for me to overwrite that specific path so that I can use my own module instead?

For example I have a modified version of that module that I want to use instead of the installed package. Maybe place something in package.json or something like:

dependencies:{
    Alias:{
         'magicalModule': process.env.local ? './myPath' : 'magicalModule'
    }
}

Something like above...

I know that there is a module called Module-alias but I'm not sure if it fits my use case.

As to why I would need to do something like this is because there is an NPM package that is used alot in multiple files and I want to replace it with another NPM package that I'm currently developing. Wanna test it locally before publishing that NPM package...

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

If you need dynamic import then put require in an if condition

let myModule = require(process.env.local ? './myPath' : 'myModule'); // make sure there is index.js inside

You cannot do it in package.json as that file is static. However if you can somehow edit package json then local dependencies can be added like

"dependencies": {
    "bar": "file:./myPath" // package.json is read inside of ./myPath
  }
over 4 years ago · Santiago Trujillo Relatório

0

Yup, after some tinkering the solution was to use module-alias after all. In my main file I added to the top of it before any code:

if(process.env.useLocal) require('module-alias/register')

Then in my package.json file I added:

 "_moduleAliases": { "magicalModule" : "path_to_file" }

after my dependencies section, it overwrites path to node_modules and my project will use my local module instead.

Hope this helps anyone else out there who needs to do something similar to me.

Cheers

over 4 years ago · Santiago Trujillo 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