我也想将静态资产复制到构建文件夹中,例如图像、css 和资产。
我注意到在他们的示例项目中,server.js 将构建文件夹映射到 /public。
server.use('/public', express.static(path.join(__dirname, '/build')))
我是不是该
一个。作为构建过程的一部分,让 webpack 将我的公共文件夹的内容复制到构建文件夹中
湾。或者,在 express 中设置另一个指向我的公用文件夹的静态路由,如果是这样,对构建文件夹的引用可能会令人困惑,因为它也包含公用名称。
C。混合,将 css 处理添加到 webpack 步骤,并将处理后的 css 文件也放入 build 文件夹,但在单独的 /assets express.static 路由中提供静态资产(如未处理的图像)。
我是 webpack 的新手,所以不确定如何设置 a 或 c,因此将不胜感激。
webpack.config.js
var webpack = require('webpack');
var path = require('path');
var webpackConfig = {
resolve: {
extensions: ['', '.js', '.jsx']
},
entry: [
'webpack-dev-server/client?http://localhost:3000',
'webpack/hot/only-dev-server',
'./client.js'
],
output: {
path: path.resolve('./build/js'),
publicPath: '/public/js/',
filename: 'main.js'
},
module: {
loaders: [
{
test: /\.(js|jsx)$/,
exclude: /node_modules/,
loaders: [
require.resolve('react-hot-loader'),
require.resolve('babel-loader')
]
},
{ test: /\.json$/, loader: 'json-loader'}
]
},
node: {
setImmediate: false
},
plugins: [
new webpack.HotModuleReplacementPlugin(),
new webpack.NoErrorsPlugin(),
new webpack.DefinePlugin({
'process.env': {
NODE_ENV: JSON.stringify(process.env.NODE_ENV)
}
})
],
devtool: 'eval'
};
module.exports = webpackConfig;