我已经使用webpack设置了一个基本的react应用程序,但是webpack-dev-server
无法正常运行。
我已经全局安装了webpack-dev-server
,并尝试运行sudo webpack-dev-server --hot
命令,因为需要进行热重装。
仅使用webpack
cmd,该项目似乎就可以正常工作。它内置在我的build文件夹中,我可以通过某些服务器使它正常工作,但不能与webpack-dev-server
一起工作。从终端可以清楚地看出构建过程已经完成,没有抛出任何错误[webpack: bundle is now VALID.
],并且实际上可以正确地监视它,因为在进行任何更改时,它确实会触发构建过程,但实际上并没有被构建[它没有为我的 bundle 软件服务.js]。我尝试更改整个配置,但仍然无法解决问题。
如果有人可以提供帮助,将不胜感激。
以下是我的webpack.config.js文件。
var path = require('path');
module.exports = {
devtool: '#inline-source-map"',
watch: true,
colors: true,
progress: true,
module: {
loaders: [{
loader: "babel",
include: [
path.resolve(__dirname, "src"),
],
test: /\.jsx?$/,
query: {
plugins: ['transform-runtime'],
presets: ['es2015', 'react', 'stage-0'],
}
}, {
loader: 'style!css!sass',
include: path.join(__dirname, 'src'),
test: /\.scss$/
}]
},
plugins: [],
output: {
path: path.join(__dirname, 'build/js'),
publicPath: '/build/',
filename: '[name].js'
},
entry: {
bundle: [
'./src/index.js'
]
},
devServer: {
contentBase: "./",
inline: true,
port: 8080
},
};
最佳答案
我自己解决了这个问题。听起来很傻,但是问题出在publicPath
对象下的output
。它应该与path
属性匹配,而不仅仅是/build/
,即,
output: {
path: path.join(__dirname, 'build/js'),
publicPath: '/build/js', // instead of publicPath: '/build/'
filename: '[name].js'
},