我正在使用最新版本的 webpack 3.4.1 使用 sass 加载器和提取文本插件从 sass 源生成静态 css 文件。它在我的开发服务器上加载良好,我可以看到 css 文件,但收到控制台错误"未捕获的语法错误:意外令牌",该错误指向第一行的 css 文件 @ body {color:#000}。
我的 webpack 配置如下。任何帮助非常感谢。
const path = require('path');
const webpack = require('webpack');
const ExtractTextPlugin = require('extract-text-webpack-plugin');
module.exports = {
context: path.resolve(__dirname, ''),
entry: {
app: './src/js/app.js',
},
output: {
filename: '[name].bundle.js',
path: path.resolve(__dirname, './dist/assets'),
publicPath: '/assets',
},
devServer: {
contentBase: path.resolve(__dirname, './src'), // New
},
module: {
rules: [{
test: /.js$/,
exclude: [/node_modules/],
use: [{
loader: 'babel-loader',
options: {
presets: ['es2015']
},
}],
},
{
test: /.(svg|gif|png|eot|woff|ttf)$/,
use: [{
loader: 'url-loader'
}]
},
{
test: /.scss$/,
use: ExtractTextPlugin.extract({
fallback: 'style-loader',
use: ['css-loader', 'sass-loader']
})
}
],
},
plugins: [
new ExtractTextPlugin({
filename: '[name].bundle.css',
allChunks: true,
}),
],
};
为什么不使用从 Sass 到 CSS 的外部编译器,它会更快更容易,你只会在你的 webpack 配置中使用 CSS 加载器, 您有多个从 sass 到 CSS 的程序编译器,例如(指南针、Prepros( 普雷普罗斯太好了, 我使用这种方式,没有任何问题