@@ -4,7 +4,7 @@ import {GlobCopyWebpackPlugin} from '../plugins/glob-copy-webpack-plugin';
44import { BaseHrefWebpackPlugin } from '@angular-cli/base-href-webpack' ;
55
66const HtmlWebpackPlugin = require ( 'html-webpack-plugin' ) ;
7-
7+ const ExtractTextPlugin = require ( 'extract-text-webpack-plugin' ) ;
88
99export function getWebpackCommonConfig (
1010 projectRoot : string ,
@@ -71,46 +71,26 @@ export function getWebpackCommonConfig(
7171 loaders : [ 'raw-loader' , 'postcss-loader' , 'sass-loader' ]
7272 } ,
7373
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
7575 {
7676 include : styles ,
7777 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+ {
8581 include : styles ,
8682 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+ {
9586 include : styles ,
9687 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+ {
10591 include : styles ,
10692 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' ] )
11494 } ,
11595
11696 // load global scripts using script-loader
@@ -130,6 +110,9 @@ export function getWebpackCommonConfig(
130110 template : path . resolve ( appRoot , appConfig . index ) ,
131111 chunksSortMode : 'dependency'
132112 } ) ,
113+ new ExtractTextPlugin ( environment === 'prod'
114+ ? '[name].[contenthash].bundle.css'
115+ : '[name].bundle.css' ) ,
133116 new BaseHrefWebpackPlugin ( {
134117 baseHref : baseHref
135118 } ) ,
0 commit comments