2016-07-29 21 views
1

Meine webpack Config ist wie folgtindex.html von webpack erstellt wurde, umfasst vendor.js und app.bundle.js mit einem „/“, wo sie in der gleichen dist-Ordner sind

config.output = isTest ? {} : { 
path: __dirname + '/dist', 
publicPath: baseUrl, 
filename: isProd ? '[name].[hash].js' : '[name].bundle.js', 
chunkFilename: isProd ? '[name].[hash].js' : '[name].bundle.js' 
}; 

if (!isTest) { 

config.plugins.unshift(
    new HtmlWebpackPlugin({ 
    template: './app/index.ejs', 
    inject: 'body', 
    baseUrl: '/' 
    }), 
    new ExtractTextPlugin('[name].[hash].css', {disable: !isProd}) 
); 

config.plugins.push(
    new webpack.optimize.CommonsChunkPlugin('vendors', 'vendors.js') 
); 
} 

Aber wenn ich laufen webpack sie schafft die Datei index.html im dist-Ordner mit vendor.js und /app.bundle.js mit a/obwohl alle drei im selben Ordner befinden,

<script type="text/javascript" src="/vendors.js"></script><script type="text/javascript" src="/app.bundle.js"></script></body> 

daher, wenn ich laufen

webpack-dev-server --history-api-fallback --inline --progress --host 0.0.0.0 

Es ist nicht die Seite richtig zu machen und wirft Fehler, dass sie nicht in der Lage ist jquery Modul zu finden, wie folgt:

Uncaught ReferenceError: jQuery is not defined(anonymous function) @ transition.js:59__webpack_require__ @ bootstrap 26cc2c2…:50(anonymous function) @ no-op.js?59ab:1__webpack_require__ @ bootstrap 26cc2c2…:50(anonymous function) @ no-op.js:2__webpack_require__ @ bootstrap 26cc2c2…:50(anonymous function) @ loader.js:1__webpack_require__ @ bootstrap 26cc2c2…:50(anonymous function) @ bootstrap 26cc2c2…:96__webpack_require__ @ bootstrap 26cc2c2…:50(anonymous function) @ bootstrap 26cc2c2…:96(anonymous function) @ bootstrap 26cc2c2…:96 angular.js:68 

Antwort

0

Ok, habe ich es geschafft, dies zu umgehen, war nur ein baseURL im webpack,

ich habe zu wissen, dass, wenn index.html durch die webpack mit vendor.js und app.bundle.js erstellt wird, ist es die baseURL an den Skripten Papierweg in der index.html anhängt

var baseUrl = '/abc/' 
inside index.html, it will be <script type="text/javascript" src="/abc/vendors.js"></script><script type="text/javascript" src="/abc/app.bundle.js"></script></body> </html>