2017-01-20 4 views
0

Ich bekomme den Fehler zu Modulfehler Instanziieren, wenn ich das Uglify js Plugin verwende; Es funktioniert gut, wenn ich keine Plugins einschließe, wie kann ich es für die Produktion verkleinern? Das ist mein webpack config:Webpack und eckig 1 Uglify-Plugin

const webpack = require('webpack'); 

module.exports = { 
    entry: './src/app.js', 
    vendor: ['angular'], 
    output: { 
     path: './dist', 
     filename: 'bundle.js' 
    }, 
    module: { 
     loaders: [ 
      { 
       test: /\.css$/, 
       loader: 'style-loader!css-loader' 
      } 
     ] 
    }, 
    plugins: [ 
     new webpack.optimize.UglifyJsPlugin() 
    ], 
    watch: true 
}; 

Mein app.js:

var angular = require('angular'); 
require('angular-ui-router'); 
global.jQuery = require('jquery'); 
require('bootstrap'); 
require("./css/style.css"); 

angular.module('todoApp', ['ui.router']).config(require('./routes')); 

require('./services/todoService'); 

require('./controllers/mainController'); 
require('./controllers/homeController'); 
require('./controllers/aboutController'); 

Antwort

2

Vermutlich haben Sie die dependency injection guide über Abhängigkeits Anmerkung nicht folgen. Sie haben ein paar Optionen:

  1. In controllers/mainController geben mainController.$inject = ['$scope', '$http']; (Anpassung je nach Bedarf).
  2. Verwenden Sie die ng-annotate-loader. Abhängig von Ihrem Code-Stil, können Sie Konstrukteure haben mit Anmerkungen versehen mit /*@ngInject*/

Um eine Abhängigkeit Anmerkung während der Entwicklung nicht entgehen lassen, möchten Sie vielleicht strict dependency injection ermöglichen.

+0

Scheint jetzt zu arbeiten, aber ich erhalte einige Fehler, wenn ich npm build, aber die App funktioniert immer noch; WARNING in bundle.js von UglifyJs Löschen unbenutzte Funktion nodesetLinkingFn [./~/angular/angular.js:10491, 0] Löschen unbenutzter Funktion directiveLinkingFn [./~/angular/angular.js:10498,0] Löschen nicht verwendeter Variablen arrayMode [./~/angular-ui-router/release/angular-u-i-router.js:854, 0] Nebenwirkungen bei der Initialisierung der nicht verwendeten Variablen ignoreUpdate [./~/angular-u-router/release/angular-u-irouter.js:2098,0] Nebenwirkungen bei der Initialisierung der nicht verwendeten Variablen geerbt [./~/ eckig –