3.0.1 • Published 4 years ago

@desco/env-require v3.0.1

Weekly downloads
5
License
ISC
Repository
github
Last release
4 years ago

Veja outros projetos NPM aqui.

Veja outros projetos aqui.


📋 Tabela de conteúdos


⚙️ Instalação

npm install --save @desco/env-require

Note que será necessário ter o NPM instalado para o comando funcionar.


📦 Importação

Node

const configEnvRequire = require("@desco/env-require")

Front

import configEnvRequire from "@desco/env-require"

📚 Como Usar

dynamicImports_dev.js

module.exports = {
  '@desco/atlas': () => require('../../atlas'),
}

dynamicImports.js

module.exports = {
  '@desco/atlas': () => require('@desco/atlas'),
  ...require('./dynamicImports_dev')
}

index.js

const envRequire = require('@desco/env-require')(packagesDynamicImports)

envRequire('@desco/atlas')

No dynamicImports_dev.js exporte um objeto contendo em suas chaves os nomes dos pacotes e em seus valores uma função contendo o carregamento da versão local do pacote.

No dynamicImports.js exporte um objeto contendo em suas chaves os nomes dos pacotes e em seus valores uma função contendo o carregamento da versão NPM do pacote.

Ao fim do objeto do dynamicImports.js concatene os valores importador de dynamicImports_dev.js, dessa forma os pacotes existentes irão sobrescrever os anteriores.

Importe o envRequire já executando e passando o objeto importado de dynamicImports.js, dessa forma ele já irá saber com quais pacotes irá trabalhar.

O dynamicImports_dev.js só deve ser versionado com objeto vazio de forma que em produção sempre seja usado os pacotes NPM. Após versionar vazio, adicione o dynamicImports_dev.js ao .gitignore para que as mudanças de cada programador não sejam enviadas para produção.

Garanta que os pacotes locais estejam com os pacotes instalados! (npm install)

Agora é só usar o envRequire no lugar do require/import!


🗂️ Escopo

Eventualmente você pode querer ter duas instâncias do envRequire, para isso basta passar um segundo parâmetro com o nome do escopo de cada instância!

const envRequire = require('./dynamicImports')(packages, 'main')
const envRequire2 = require('./dynamicImports')(packages, 'second')

envRequire('@desco/atlas')
envRequire2('@desco/urano')

Por padrão o nome do escopo é default, sendo assim não é precisa passar um escopo caso esteja usando uma única instância.


Autor

2.1.1

4 years ago

3.0.1

4 years ago

3.0.0

4 years ago

2.0.0

4 years ago

1.0.3

4 years ago

1.0.2

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago