由于您的代码在SCSS中,您需要SCSS加载器和CSS加载器,您还需要extract-text-webpack-plugin
,这就是将包中包含的任何文本导出到单独的文件中。
另外,因为我知道你会想要从包中移动图像和字体文件,我继续添加测试以提取图像/字体,对于那些需要安装file-loader
的用户。我希望帮助
const path = require('path');
const webpack = require('webpack');
const ExtractText = require('extract-text-webpack-plugin');
const extractCss= new ExtractText({ filename: 'styles/vendors.css' });
const extractSass = new ExtractText({ filename: 'styles/site.css' });
module.exports = (env) => {
return {
entry: {
main: path.resolve(__dirname, '../', 'src', 'Front.js'),
},
output: {
path: path.resolve(__dirname, '../', 'dist'),
filename: 'js/[name]-bundle.js',
},
module: {
rules: [
{ test: /\.css/, use: extractCss.extract(['css-loader']) },
{ test: /\.scss/, exclude: /node_modules/, use: extractSass.extract(['css-loader', 'sass-loader']) },
{ test: /\.(png|jpg)$/, exclude: /node_modules/, use: 'file-loader?outputPath=images/&publicPath=../'},
{ test: /\.(ttf|eot|svg|woff(2)?)(\?[a-z0-9]+)?$/, use: 'file-loader?outputPath=fonts/&publicPath=../'},
]
},
resolve: {
modules: ['node_modules'],
},
plugins: [
extractCss,
extractSass,
]
}
}
PS: I am in a hurry out, so I just cooked this up fast, when I come back I will review, in case you find any bugs, just comment below.
我不知道你在问什么,从我看到你已经有一个方法来提取源代码分成多个文件,你在说什么,从取出的样式表捆绑? –
是的!这就是我想要做的 - “从捆绑中删除样式表并将其放入一个css文件中” –