2017-11-29 3 views
0

Ich bin in der Mitte von einer App von Schienen 3.2 Upgrade webpacker gem alles Schienen 4.2 mit funktioniert in localhost Ich habe mein Vermögen zusammengestellt undwebpacker nicht korrekt auf Heroku arbeiten

laufen RAILS_ENV = Produktionsschienen s

aber ich Fehler, wenn zu Heroku schieben es kompiliert alle Assets auch die Packungen, sondern erzeugt Fehler in js, ich Winkel verwenden in vielen Teilen der App und der Fehler wird mit Dependency Injection im Zusammenhang

check link

Antwort

0

Das Hauptproblem hier war das unglifier Juwel ich die uglifier coment musste

#config.assets.js_compressor = :uglifier 

Der nächste Teil für die Konfiguration webpack in Produktion war, dass sehe so aus:

const webpack = require('webpack') 
const { basename, dirname, join, relative, resolve } = require('path') 
const merge = require('webpack-merge') 
const CompressionPlugin = require('compression-webpack-plugin') 
const sharedConfig = require('./shared.js') 
const { env, settings, output, loadersDir } = require('./configuration.js') 
const ExtractTextPlugin = require('extract-text-webpack-plugin') 
const ManifestPlugin = require('webpack-manifest-plugin') 

module.exports = merge(sharedConfig, { 
    output: { filename: '[name]-[chunkhash].js' }, 
    devtool: false,//'source-map', 
    stats: 'normal', 

    plugins: [ 
    new webpack.EnvironmentPlugin(JSON.parse(JSON.stringify(env))), 
    new ExtractTextPlugin({ 
     filename: '[name]-[hash].css', 
     allChunks: true 
    }), 
    new ManifestPlugin({ 
     publicPath: output.publicPath, 
     writeToFileEmit: true 
    }) 
    ], 

    resolve: { 
    extensions: settings.extensions, 
    modules: [ 
     resolve(settings.source_path), 
     'node_modules' 
    ], 
    alias: { 
    'vue$': 'vue/dist/vue.esm.js' // 'vue/dist/vue.common.js' for webpack 1 
    } 
    }, 

    resolveLoader: { 
    modules: ['node_modules'] 
    } 
}) 

Jetzt kann ich bereitstellen und die Vermögenswerte sind Arbeit Ing.

Verwandte Themen