2015-11-12 19 views
9

Sanal kutuda Ubuntu 15.10 ile Mac OSX üzerinde vagrant kullanarak bir webpack sunucusu çalıştırıyorum. Webpack dev sunucusu yeniden yükle sanal kutuda çalışmaz

webpack yapılandırma

oldukça temiz:

var HtmlWebpackPlugin = require('html-webpack-plugin'); 
var path = require('path'); 
var webpack = require('webpack'); 

var MINIFY = process.env.MINIFY === true; 

var FRONTEND_ROOT = './static' 
var SRC_PATCH = FRONTEND_ROOT + '/scripts'; 
var BUILD_PATH = './dist'; 


module.exports = { 
    entry: SRC_PATCH + '/main.js', 
    devtool: 'source-map', 
    output: { 
     path: BUILD_PATH, 
     filename: 'bundle.js' 
    }, 
    resolve: { 
    extensions: ['', '.js', '.jsx'], 
    modulesDirectories: [SRC_PATCH, 'node_modules'] 
    }, 
    plugins: [ 
    new HtmlWebpackPlugin({ 
     filename: 'index.html', 
     template: path.resolve(FRONTEND_ROOT, 'index-template.html'), 
     minify: MINIFY 
    }) 
    ], 
    module: { 
    loaders: [ 
     { 
     test: /\.jsx|js$/, 
     exclude: /node_modules/, 
     loader: 'babel-loader' 
     } 
    ] 
    }, 
    eslint: { 
    configFile: './.eslintrc' 
    } 
}; 
WebPack

[email protected]:/vagrant$ webpack-dev-server --port 8080 --devtool eval --progress --colors --hot --content-base dist 

Ve tarafından VY'de çalıştırıldı

Ben yeniden değildir OSX bir dosyayı düzenleyebilir ama ben düzenlerseniz VM'den aynı dosya yeniden yüklenir.

Sorun nedir? Bunu nasıl düzeltebilirim?

+0

VM ile ana bilgisayarda bir klasör paylaşıyor musunuz? – Kenney

+0

Evet, proje köküm VM os'da/vagrant dizinine bağlandı –

cevap

5

Ben benim Vagrantfile hattı config.vm.synced_folder ".", "/vagrant", type: "rsync", rsync_auto: true, rsync_exclude: ".git/" eklendi etmişti serseri rsync-auto https://docs.vagrantup.com/v2/cli/rsync-auto.html

ilgili sorunu da hallettim ve ayrı bir sekme altında vagrant rsync-auto tükendi.

3

Bu başka bir soru altında cevaplanır: https://stackoverflow.com/a/34937378/5114

bunu webpack dosya değişikliklerini görünümünü değiştiren --watch-poll seçeneği eklerseniz.

webpack-dev-server --watch-poll --port 8080 --devtool eval --progress --colors --hot --content-base dist 

Bu, web paketinin her N milisaniyede dosyalarda yapılan değişikliklerin yoklanmasını sağlar. Normal yöntem, mtime veya diğer dosya sistemi niteliklerini aramıyor olduğundan, Vagrant paylaşılan dizinlerinde yoklama çalışır, yalnızca bir aralıktaki dosyaları okur. Daha yavaştır ve daha fazla cpu/bellek kullanır, bu nedenle gerekmedikçe yoklamayı kullanmayın.

https://webpack.github.io/docs/cli.html#watch

İlgili konular