0
我已经很容易地为js + css设置了我的webpack配置,现在我试图更新配置以生成仅用于CSS的包。这种需求的原因是将登陆页面和应用程序本身分开。这里是我的配置(非常简单,但我一直认为可能是相关的一切):webpack中的2个包:1个用于js + css和1个用于css只有
const webpack = require('webpack');
const ExtractTextPlugin = require('extract-text-webpack-plugin');
module.exports = {
entry: [
'bootstrap-loader',
'./web/static/app/js/index.js'
],
output: {
path: './priv/static',
filename: 'js/app.js',
publicPath: '/',
},
module: {
loaders: [{
test: /\.js$/,
exclude: /node_modules/,
loader: 'babel',
query: {
plugins: ['transform-decorators-legacy'],
presets: ['react', 'es2015', 'stage-2', 'stage-0'],
}
}, {
test: /bootstrap\/dist\/js\/umd\//,
loader: 'imports?jQuery=jquery'
}, {
test: /\.scss$/,
loader: ExtractTextPlugin.extract('style', 'css?localIdentName=[hash:base64]!autoprefixer?browsers=last 2 versions!sass')
}],
},
resolve: {
extensions: ['', '.js', '.scss', '.css'],
modulesDirectories: ["node_modules", __dirname + "/web/static/app/js"],
alias: {
styles: __dirname + '/web/static/app/styles'
}
},
plugins: [
new ExtractTextPlugin('css/[name].css')
]
};
目前它生成CSS/app.css和js/app.js得很好,我想要实现的是从生成网页/静态/着陆CSS/landing.css/index.scss
我已经试过:
我加'./web/static/landing/js/index.js'
到module.exports.entry
,添加
var extractSCSS_app = new ExtractTextPlugin('css/app.css');
var extractSCSS_landing = new ExtractTextPlugin('css/landing.css');
和更换SCSS装载机如下:
}, {
test: /app\/.*?\.scss$/,
loader: extractSCSS_app.extract('style', 'css?localIdentName=[hash:base64]!autoprefixer?browsers=last 2 versions!sass')
}, {
test: /landind\/.*?\.scss$/,
loader: extractSCSS_landing.extract('style', 'css?localIdentName=[hash:base64]!autoprefixer?browsers=last 2 versions!sass')
}, {
和插件,我已经把
extractSCSS_app,
extractSCSS_landing,
几乎每一篇文章有关的WebPack我发现描述JS + CSS束配置和文档是不清楚我关于这个问题,所以我试过的是我认为可能是正确的。不幸的是,它不是,这就是为什么我在这里:)
是的,感谢您指出这一点,情况就是这样! – Chvanikoff