Asset Management - webpack をすすめる。
下記記事参考
webpackとBabelの基本を理解する(5) ―Sass編― - qiita 
sass ファイルをビルドする
ファイル構成
app/
  ├ main.js
  └ sass/
      ├ style.scss
      └ scss ファイルなど色々 
package.json
public/
  ├ index.html
  └ css/
webpack.config.js
インストール
- sass-loader - webpack
- node-sass - github - sass-loader requires you to install either Dart Sass or Node Sass on your own (more documentation can be found below).
 sass-loader を使う時に必要らしい。
 
- sass-loader requires you to install either Dart Sass or Node Sass on your own (more documentation can be found below).
- css-loader
- style-loader - html ファイルに css を直接書き込むローダー。
 
$ npm install sass-loader node-sass css-loader style-loader --save-dev
app/main.js
import style from './sass/style.scss'
webpack.config.js
const path = require('path')
module.exports = {
	entry: './app/main.js',
	output: {
		path: path.resolve(__dirname, 'public'),
		filename: 'js/script.js',
	},
	module: {
		rules: [
			{
				test: /\.scss$/i,
				exclude: /node_modules/,
				use: [
					'style-loader',
					{
						loader: 'css-loader',
						options: { url: false },
					},
					'sass-loader',
				],
			},
		],
	},
}
sass をビルドする時に css ファイルとして出力する
インストール
$ npm install mini-css-extract-plugin --save-dev
アンインストール
使わないパッケージが存在していることを気にする人はアンインストール。
$ npm uninstall style-loader --save-dev
app/main.js
import style from './sass/style.scss'
webpack.config.js
- public/css に style.css として出力する。
const path = require('path')
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
module.exports = {
	entry: './app/main.js',
	output: {
		path: path.resolve(__dirname, 'public'),
		filename: 'js/script.js',
	},
	module: {
		rules: [
			{
				test: /\.scss$/i,
				exclude: /node_modules/,
				use: [
					MiniCssExtractPlugin.loader,
					{
						loader: 'css-loader',
						options: {
							url: false,
						},
					},
					{
						loader: 'sass-loader',
						options: {},
					},
				],
			},
		],
	},
	plugins: [
		new MiniCssExtractPlugin({
			filename: 'css/style.css',
		}),
	],
}
Autoprefixer について
pastcss-loader のプラグインに autoprefixer がある。
インストールしなくてもベンダープレフィックスをある程度つけてくれるので割愛。
Minify について
ビルドする時にモードを production に指定した場合に自動的に minify される。
$ webpack --mode=production
モードが development の場合は minify されずにビルドされる。
$ webpack --mode=development