Angular CLI1.0.0-beta.26プロジェクトをAngular CLI 1.0.0-beta.30にアップグレードした後、次の2つの警告が表示されます。
fallbackLoader option has been deprecated - replace with "fallback"
loader option has been deprecated - replace with "use"
ビルドの一部として。
Angular CLI PRがコミットされました これらの警告に対処するため、 この問題 は1.0.0-beta.31
以上で対処する必要があります。
これらの警告に今すぐ対処するには、webpackの構成に次の変更を加えることができます。
loader: --> use:
fallbackLoader: --> fallback:
注:node_modules
を再インストールする場合は、これらの変更を再実行する必要があります。
詳細
Angular CLI 1.0.0-beta.30
の場合、node_modules/@angular/cli/models/webpack-configs/styles.js
でグローバルスタイルパスセクションを見つけて、次のように変更します。
loader: [
("css-loader?" + JSON.stringify({ sourceMap: cssSourceMap })),
].concat(commonLoaders, loaders),
fallbackLoader: 'style-loader',
publicPath: ''
に:
use: [
("css-loader?" + JSON.stringify({ sourceMap: cssSourceMap })),
].concat(commonLoaders, loaders),
fallback: 'style-loader',
publicPath: ''
Angular CLI 1.0.0-beta.26
の場合、./node_modules/angular-cli/models/webpack-build-styles.js
でグローバルスタイルパスセクションを見つけて、次のように変更します。
loader: ['css-loader'].concat(commonLoaders, loaders),
fallbackLoader: 'style-loader',
publicPath: ''
に:
use: ['css-loader'].concat(commonLoaders, loaders),
fallback: 'style-loader',
publicPath: ''
Angular CLI 1.0.0-beta.26を使用している場合、この問題を特定して修正するための正しいパスは次のとおりです。
node_modules/angular-cli/models/webpack-configs/styles.js
あなたはこれを見るはずです:
// load global css as css files
if (globalStylePaths.length > 0) {
rules.Push.apply(rules, baseRules.map(function (_a) {
var test = _a.test, loaders = _a.loaders;
return ({
include: globalStylePaths, test: test, loaders: ExtractTextPlugin.extract({
loader: [
// css-loader doesn't support webpack.LoaderOptionsPlugin properly,
// so we need to add options in its query
("css-loader?" + JSON.stringify({ sourceMap: cssSourceMap }))
].concat(commonLoaders, loaders),
fallbackLoader: 'style-loader',
// publicPath needed as a workaround https://github.com/angular/angular-cli/issues/4035
publicPath: ''
})
});
}));
}
loaderをuse
に変更し、fallbackLoaderをfallback
に変更します。
これは最新リリースで修正されていることにも注意してください。