私は、すなわちpublic/asests/css
とpublic/assets/js
、それぞれのサブディレクトリに出力CSSやJSへのconfigureのWebPACKを管理していました。しかし、私はイメージとフォントで同じことをする方法を知らない。設定]のWebPACK
つまり、public/assets/images
フォルダに画像を出力し、public/assets/fonts
にフォントを出力したいと思います。
var path = require('path');
var ExtractCSS = require('extract-text-webpack-plugin');
module.exports = {
context: path.resolve('private/js'),
resolve: ['', '.js', '.jsx', '.es6', '.json'],
entry: {
homepage: './homepage'
},
output: {
path: path.resolve('public/assets'),
publicPath: '/public/assets/',
filename: 'js/[name].js'
},
plugins: [
new ExtractCSS('css/[name].css')
],
devServer: {
contentBase: 'public'
},
module: {
loaders: [
{
test: /\.(es6|js|jsx)$/,
exclude: /node_modules/,
loader: 'babel-loader'
},
{
test: /\.css$/,
exclude: /node_modules/,
loader: ExtractCSS.extract('style-loader', 'css-loader')
},
{
test: /\.less$/,
exclude: /node_modules/,
loader: ExtractCSS.extract('style-loader', 'css-loader!less-loader')
},
{
test: /\.(jpg|jpeg|gif|png|woff|woff2|eot|ttf|svg)$/,
exclude: /node_modules/,
loader: 'url-loader?limit=1024'
}
]
}
}
ねえ、これは本当に役に立ちました。しかし何らかの理由で、フォントだけが私のために働いた。イメージは新しいイメージフォルダにエクスポートされません。私は、プラグインをしないのですか、私はSVGのを使用しています事実が問題でしょうか? – HGB
私は同じ問題がありました。画像のURLローダーの代わりにファイルローダーを使用して修正しました。 'loader: 'file?limit = 1024&name = images/[name]。[ext]'' – thomas
これはwebpack 1のですか?私はこのエラーを受け取ります:ファイルローダーと名前= images/[名前]。[ext] ' – Kokodoko