2017-07-13 6 views
0

Webpack 2から3にアップグレードする途中で、[email protected]の問題が発生しています。Webpack 3にアップグレードするときにファイルローダーで構文エラーが発生する

You may need an appropriate loader to handle this file type. 
| export default = __webpack_public_path__ + "foo.css" 

ここ

のWebPACKの設定です(簡潔にするために、完全なエラーの詳細を省略。これは、関連する部分である。。):ここで私が得ているエラーがある

module: { 
    rules: [{ 
    test: /\.scss$/, 
    use: [{ 
     loader: 'file-loader', 
     options: { 
     name: '[name].css' 
     } 
    }, 
    'extract-loader', 
    'css-loader', 
    'sass-loader' 
    fallback: 'style-loader/url' 
    } 
} 

前私は0.9.0を使用していて、エラーはありませんでした。 2つのバージョンの違いを見ると、0.9.0は、Harmonyの代わりにCJSフォーマットを使用する文字列を返します。

0.9.0

return "module.exports = " + publicPath + ";"; 

1.0.0-beta.1

return `export default = ${publicPath};`; 

私はfile-loaderbabel-loaderを入れてみましたが、それは問題を解決しませんでした。私は0.9.0を使用することができますが、すべてうまく動作しますが、そのバージョンでは立ち往生したくありません。

答えて

1

これはfile-loaderベータ版のバグです。デフォルトのエクスポートのための正しい構文は、(=は、デフォルトのエクスポートでは有効ではありません)です:

export default "/public/path/to/file"; 

このバグは、次の(ベータ)版になりますこれは、固定されています。今のところ、安定版を使うべきです。現在、最新のバージョンは0.11.2です。

+0

あなたはそうです。私は完全にそれを逃したが、今それを見て、完全に明らかである。ありがとう! –

関連する問題