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

webpack.DefinePlugin não está funcionando quando o build é de produção.

Trecho do webpack.config.js:

let SERVICE_URL = JSON.stringify('http://localhost:3000');

if (process.env.NODE_ENV == 'production') {
    SERVICE_URL = JSON.stringify('http://caminho-da-sua-aplicacao');
}

plugins.push(new webpack.DefinePlugin({
    SERVICE_URL
}));

Trecho do arquivo 0.bundle.js:

...this._http.get(`${"http://caminho-da-sua-aplicacao"}/negociacoes/semana`).then((...

Mesmo assim a aplicação continua servindo a versão de desenvolvimento para o navegador que acaba invocando a seguinte URL: http://localhost:3000/negociacoes/semana

4 respostas

Oi Euripedes, você consegue me garantir que tá usando a mesma versão do Webpack que é usada no curso? Estou quase certo de que não é um problema com o definePlugin já que o build gera o arquivo correto.

Cola o seu webpack.config.js completo aqui pra mim ver na integra?

Versão do webpack que estou utilizando:

"webpack": "^3.12.0",

O que estou achando mais estranho que na pasta dist o arquivo 0.bundle.js é gerado da maneira correta, mas ao carregar a aplicação no browser dá impressão que está sendo mantido algum cache.

solução!

Consegui identificar o problema.

Estou executando a aplicacação com webpack-dev-server e este cria o bundle em memória considerando o build de desenvolvimento.

Boa Euripedes! Precisando, estamos por aqui!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software