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

Minhas negociações não está sendo importadas, pois ele está considerando localhost:3000 como parte do diretório

Na geração do bundle está apresentando o seguinte erro:

http://localhost:8080/localhost:3000/negociacoes/anterior 404 (Not Found) Está considerando o localhost:3000 como parte do diretório para importar as negociações.

Sabe o que pode ser?

6 respostas

Fala ai Lucas, como está a configuração do seu webpack? Acredito que o problema possa ser ele.

Matheus, Obrigado por responder. Está assim o arquivo webpack.config.js

const path = require('path');
const babiliPlugin = require('babili-webpack-plugin');
const extractTextPlugin = require('extract-text-webpack-plugin');
const optimizeCSSAssetsPlugin = require('optimize-css-assets-webpack-plugin');
const webpack = require('webpack');
const HtmlWebpackPlugin = require('html-webpack-plugin');

let plugins = [];

plugins.push(new HtmlWebpackPlugin({
    hash: true,
    minify: {
        html5: true,
        collapseWhitespace: true,
        removeComments: true
    },
    filename: 'index.html',
    template: __dirname + '/main.html'
}))

plugins.push(new extractTextPlugin('style.css'));
plugins.push(new webpack.ProvidePlugin({
    '$': 'jquery/dist/jquery.js',
    'jQuery': 'jquery/dist/jquery.js'
}));

plugins.push(new webpack.optimize.CommonsChunkPlugin({
    name: 'vendor',
    filename: 'vendor.bundle.js'
}));

if(process.env.NODE_ENV == 'production'){

    plugins.push(new webpack.optimize.ModuleConcatenationPlugin());
    plugins.push(new babiliPlugin());
    plugins.push(new optimizeCSSAssetsPlugin({
        cssProcessor: require('cssnano'),
        cssProcessorOptions:{
            discardComments:{
                removeAll: true
            }
        },
        canPrint: true
    }));
}

module.exports = {
    entry: {
        app: './app-src/app.js', // Dois pontos de entrada na aplicação para o webpack decidir como criar os módulos
        vendor: ['jquery','bootstrap','reflect-metadata']
    },
    output: {
        filename: 'bundle.js',
        path: path.resolve(__dirname, 'dist')
    },
    module: {
        rules: [
            {
                test: /\.js$/,
                exclude: /node_modules/,
                use: {
                    loader: 'babel-loader'
                }
            },
            {
                test: /\.css$/,
                use: extractTextPlugin.extract({
                    fallback: 'style-loader',
                    use: 'css-loader'
                })
            },
            { 
                test: /\.(woff|woff2)(\?v=\d+\.\d+\.\d+)?$/, 
                loader: 'url-loader?limit=10000&mimetype=application/font-woff' 
            },
            { 
                test: /\.ttf(\?v=\d+\.\d+\.\d+)?$/, 
                loader: 'url-loader?limit=10000&mimetype=application/octet-stream'
            },
            { 
                test: /\.eot(\?v=\d+\.\d+\.\d+)?$/, 
                loader: 'file-loader' 
            },
            { 
                test: /\.svg(\?v=\d+\.\d+\.\d+)?$/, 
                loader: 'url-loader?limit=10000&mimetype=image/svg+xml' 
            }
        ]
    },
    plugins
}

Matheus, Bom dia.

Muito obrigado por sua ajuda, estava mesmo faltando esta configuração, realizei os testes e agora está funcionando :D

solução!

Acho que faltou uma configuração mesmo Lucas, sendo elas:

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

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

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

module.exports = {
// ...

Repare que faltou definir o SERVICE_URL antes do seu if onde é feito a verificação de produção (production), caso seja produção, defina SERVICE_URL referente ao IP de produção.

E antes de exportar os módulos (module.exports), defina um novo plugin passando o valor de SERVICE_URL.

Acho que deve resolver.

De nada Lucas, sempre que precisar não deixe de criar suas dúvidas.

Abraços \o/

Obrigado :D

Abraço o/

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