Webpack 4でsassローダーを使用するには?私はこれについて多くのことを読み、ほとんどのサイトはExtractTextPluginを使用することを推奨しましたが、ExtractTextPluginはwebpack 4では動作しません。
次のように書きましたwebpack.config.js:
const path = require('path');
const ClosureCompilerPlugin = require('webpack-closure-compiler');
module.exports = {
module: {
rules: [
{
test: /\.scss$/,
use: [{
loader: "style-loader"
}, {
loader: "css-loader"
}, {
loader: "sass-loader"
}]
}
]
},
plugins: [
new ClosureCompilerPlugin({
compiler: {
language_in: 'ECMASCRIPT6',
language_out: 'ECMASCRIPT3',
compilation_level: 'ADVANCED'
},
concurrency: 3,
})
]
};
出力.jsファイルは正常に機能しますが、私の.scssはcssにコンパイルされませんでした。エントリポイントを追加しようとしました。
entry: {
stylesheet: path.resolve('src', 'scss/styles.scss'),
main: path.resolve('src', 'index.js')
}
この後、styles.scssはstylesheet.jsにコンパイルされますが、.cssにはコンパイルされません。
webpack
4は、スタンドアロンの*.css
ファイルを単独で出力できません。別の*.css
ファイルを取得するには、 extract-text-webpack-plugin
を使用して、すべてのCSSを独自のエントリチャンクに引き出す必要があります。これは 良いチュートリアル です。
Mini-css-extract-pluginを使用できます。
https://github.com/webpack-contrib/mini-css-extract-plugin
Webpack 4を使用してSASSをCSSに抽出するために同じプラグインを使用しましたが、これは魅力のように機能しています。
ベータ版は[email protected]
npm install extract-text-webpack-plugin@next