2016-03-15 112 views
2

我开始学习webpack并试图通过使用webpack-dev-server进行编译和浏览器重新加载。Webpack编译但webpack-dev-server不具有相同的配置

我遇到了一个问题,当我运行命令:

webpack 

我的文件编译很好,但是当我使用命令:

# I removed the "--hot" and "--inline" to try to isolate where the problem 
# was coming from. 

webpack-dev-server --config webpack.config.js 

命令的输出终端看起来不错,但没有什么实际上编译:

Gif showing the difference

事情是,webpack-dev-server 确实成功地为public目录中的文件提供服务,以便部分工作,它只是不编译javascript和vue文件。

这里是我的webpack.config.js

module.exports = { 
    entry: './src/index.js', 
    output: { 
     path: __dirname + '/public', 
     publicPath: '/public', 
     filename: 'bundle.js' 
    }, 
    devtool: 'source-map', 
    devServer:{ 
     contentBase: __dirname + '/public' 
    }, 
    module:{ 
     loaders:[ 
      { test: /\.vue$/, loader: 'vue'} 
     ] 
    } 
}; 

我一直在描述的过程中,我没有看到任何不对劲的vue-loader start tutorial沿着以下。

我知道我指定的内容目录与本教程不同,但据我所知,不会影响文件的编译。

我在这里错过了什么?

回答

4

发生这种情况是因为Webpack-dev-server从内存而不是磁盘提供文件。 从文档的准确的报价,https://webpack.github.io/docs/webpack-dev-server.html

该修改束从存储器供应在publicPath指定的相对路径 (见API)。它不会被写入您的 配置的输出目录。如果一个包已经存在于相同的url路径中,则内存中的包将优先(默认情况下)。

+0

啊,好吧,我记得现在你提到它。所以这意味着我遇到的总体问题有点不同。我会更新我的问题。 –

+0

实际上,总体问题不同,我要创建一个新帖子。你回答了我最初问的问题,因此这篇文章没有更多内容。 –

+0

您是否找到了答案? – jdc91

相关问题