如何在可渗透模板项目中提供静态图像/ css / assets?

时间:2015-10-31 11:53:15

标签: webpack fluxible

我希望将静态资源复制到构建文件夹,例如图像和css以及资产。

我注意到在他们的示例项目中,server.js正在将构建文件夹映射到/ public。

server.use('/public', express.static(path.join(__dirname, '/build')))

我应该

一个。作为构建过程的一部分,将我的公共文件夹的webpack副本复制到构建文件夹中

湾或者,在express中指向我的公共文件夹时设置另一个静态路由,如果对build文件夹的引用可能会引起混淆,因为它也有公共名称。

℃。混合,将css处理添加到webpack步骤并使处理过的css文件也进入构建文件夹,但是具有静态资产,例如未处理的图像,以单独/资产express.static路径提供。

我是webpack的新手,所以不确定如何设置或提供帮助,我们将不胜感激。

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;

0 个答案:

没有答案