コマンドnpm run build
を実行しようとしていますが、機能しません。そして私は以下のエラーを受け取ります:
> [email protected] build /Users/Prashant/Code/TypeScript
> webpack
Hash: c6dbd1eb3357da70ca81
Version: webpack 3.2.0
Time: 477ms
Asset Size Chunks Chunk Names
bundle.js 2.89 kB 0 [emitted] main
[0] ./src/index.js 51 bytes {0} [built]
[1] ./src/index.css 290 bytes {0} [built] [failed] [1 error]
ERROR in ./src/index.css
Module build failed: Unknown Word (5:1)
3 | // load the styles
4 | var content = require("!!./index.css");
> 5 | if(typeof content === 'string') content = [[module.id, content, '']];
| ^
6 | // Prepare cssTransformation
7 | var transform;
8 |
@ ./src/index.js 1:0-22
私のWebパック構成ファイル(webpack.config.js)は次のとおりです。
var path = require('path');
module.exports = {
entry: './src/index.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'bundle.js'
},
module: {
rules: [
{
test: /\.css$/,
use: [
'css-loader',
'style-loader'
]
}
]
}
};
そして私のCSSファイル(index.css)は
body {
color:red;
}
そして私のjsファイルindex.jsは以下です:
require("./index.css");
alert('this is my alert');
ファイルを実行しようとしていますが、機能しません。すべてのスペルをチェックしましたが、他の多くのCSSを追加しようとしましたが、機能しません。この問題の解決方法を教えてください。
ローダーは逆の順序で適用されます。つまり、最初にstyle-loader
を適用してから、その結果をcss-loader
に渡します。 style-loader
の出力はJavaScriptで、スタイルは<style>
タグに挿入されますが、css-loader
はCSSを予期しており、JavaScriptが有効でないため解析に失敗します。
正しいルールは次のとおりです。
{
test: /\.css$/,
use: [
'style-loader',
'css-loader'
]
}
私は同じ問題を抱えていて、最終的に、*。cssファイルを処理していたwebpack構成に2番目のモジュールルールがあることがわかりました