Solucionado (ver solução)
Solucionado
(ver solução)
7
respostas

ERRO NA RESPOSTA

Creio que haja esse erro, alguém pode confirmar?

Pergunta: Por mais que Mayra utilize MacOS, ela já não pode ter tanta certeza se o ambiente que rodará sua aplicação é compatível com o shell do linux(WINDOWS)...

Resposta: Exato! A configuração falharia no sistema operacional Windows, sem seu prompt de comando.

7 respostas

Fala ai Arthur, tudo bem? A resposta está correta, quando a gente define variaveis de ambiente direto nos comandos npm, por exemplo:

build-prod": "NODE_ENV=production webpack -p --config webpack.config.js"

Repare que foi definida a variavel NODE_ENV cujo valor deveria ser production, mas, em ambientes Windows essa sintaxe não funciona.

Ai normalmente a gente utiliza a biblioteca cross-env: https://www.npmjs.com/package/cross-env

Ela consegue garantir que variavies diretos nos scripts iram funcionar em diferentes sistemas operacionais, o comando ficaria:

build-prod": "cross-env NODE_ENV=production webpack -p --config webpack.config.js"

Espero ter ajudado.

Desculpa! Me expressei mal no título. Na verdade seria erro na afirmativa.. Onde está "shell do linux" não seria Windows então? Até confirmando sua resposta agora.

Fala Arthur.

Na verdade está correta, é porque essa possibilidade de definir variavies inline antes do comando é um recurso so Linux e derivados, então, o Windows precisaria compatível com essa funcionalidade (que por padrão não é).

Espero ter ajudado.

Rapaz que confusão que eu to fazendo então kkkk Desculpa insistir, mas vou só confirmar essa frase pq se for isso mesmo eu ainda não entendi..

"Por mais que Mayra utilize MacOS, ela já

 não pode ter tanta certeza

se o ambiente que rodará sua aplicação

 é compatível com o shell do linux."

Pelo que eu entendi com o código ela poderia ter certeza sim de que é compatível com o shell do linux já que o comando é lido pelo linux. Porém não poderia ter certeza nenhuma de que é compatível com o Windows já que para tal faltou o cross-env.

Não seria isso?

solução!

Fala Arthur, é isso ai, o ambiente precisa ser compatível com o ambiente Linux para rodar sem o cross-env, agora, para que ele funcione também com o Windows, ai precisaria do cross-env.

Eu entendi seu ponto, acho que o problema é a palavra compatível, talvez a gente pode mudar ela para deixar claro que com variaveis inline o sistema operacional precisa aceitar essa funcionalidade e caso o mesmo não aceite é necessário o cross-env ou alguma outra biblioteca que garanta essa "compatibilidade".

A palavra pode ser interpretada pelos dois lados, ou seja:

Compativel de ter a funcionalidade de variaveis inline ou compativel para que funcione sem a funcionalidade de variaveis inline.

Espero ter ajudado.

Show, Matheus. Obrigado pela solicitude. O importante é que eu não entendi errado então kk

Magina Arthur, sempre que precisar não deixe de criar suas dúvidas.

Peço desculpas pela confusão minha e da transcrição.

Abraços e bons estudos.