web-dev-qa-db-ja.com

「fallbackLoaderオプションは非推奨になりました-「フォールバック」に置き換えてください」

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"

ビルドの一部として。

11
Jan Nielsen

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: ''
9
Jan Nielsen

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: ''
            })
        });
    }));
}
  • loaderuseに変更し、fallbackLoaderfallbackに変更します。

  • これは最新リリースで修正されていることにも注意してください。

1
Ellis Enobun