@@ -4,7 +4,7 @@ import {GlobCopyWebpackPlugin} from '../plugins/glob-copy-webpack-plugin';
4
4
import { BaseHrefWebpackPlugin } from '@angular-cli/base-href-webpack' ;
5
5
6
6
const HtmlWebpackPlugin = require ( 'html-webpack-plugin' ) ;
7
-
7
+ const ExtractTextPlugin = require ( 'extract-text-webpack-plugin' ) ;
8
8
9
9
export function getWebpackCommonConfig (
10
10
projectRoot : string ,
@@ -71,46 +71,26 @@ export function getWebpackCommonConfig(
71
71
loaders : [ 'raw-loader' , 'postcss-loader' , 'sass-loader' ]
72
72
} ,
73
73
74
- // outside of main, extract static css files using extract and file loaders.
74
+ // outside of main, extract static css files using extract-text-plugin
75
75
{
76
76
include : styles ,
77
77
test : / \. c s s $ / ,
78
- loaders : [
79
- 'file-loader?name=[name].css' ,
80
- 'extract-loader' ,
81
- 'css-loader' ,
82
- 'postcss-loader'
83
- ]
84
- } , {
78
+ loader : ExtractTextPlugin . extract ( [ 'css-loader' , 'postcss-loader' ] )
79
+ } ,
80
+ {
85
81
include : styles ,
86
82
test : / \. s t y l $ / ,
87
- loaders : [
88
- 'file-loader?name=[name].css' ,
89
- 'extract-loader' ,
90
- 'css-loader' ,
91
- 'postcss-loader' ,
92
- 'stylus-loader'
93
- ]
94
- } , {
83
+ loader : ExtractTextPlugin . extract ( [ 'css-loader' , 'postcss-loader' , 'stylus-loader' ] )
84
+ } ,
85
+ {
95
86
include : styles ,
96
87
test : / \. l e s s $ / ,
97
- loaders : [
98
- 'file-loader?name=[name].css' ,
99
- 'extract-loader' ,
100
- 'css-loader' ,
101
- 'postcss-loader' ,
102
- 'less-loader'
103
- ]
104
- } , {
88
+ loader : ExtractTextPlugin . extract ( [ 'css-loader' , 'postcss-loader' , 'less-loader' ] )
89
+ } ,
90
+ {
105
91
include : styles ,
106
92
test : / \. s c s s $ | \. s a s s $ / ,
107
- loaders : [
108
- 'file-loader?name=[name].css' ,
109
- 'extract-loader' ,
110
- 'css-loader' ,
111
- 'postcss-loader' ,
112
- 'sass-loader'
113
- ]
93
+ loader : ExtractTextPlugin . extract ( [ 'css-loader' , 'postcss-loader' , 'sass-loader' ] )
114
94
} ,
115
95
116
96
// load global scripts using script-loader
@@ -130,6 +110,9 @@ export function getWebpackCommonConfig(
130
110
template : path . resolve ( appRoot , appConfig . index ) ,
131
111
chunksSortMode : 'dependency'
132
112
} ) ,
113
+ new ExtractTextPlugin ( environment === 'prod'
114
+ ? '[name].[contenthash].bundle.css'
115
+ : '[name].bundle.css' ) ,
133
116
new BaseHrefWebpackPlugin ( {
134
117
baseHref : baseHref
135
118
} ) ,
0 commit comments