próbuję załadować plik JSON za stan mojego reactjs aplikacji, ale WebPack zachowuje rzuca ten błąd:WebPack nie trafia do analizowania JSON nawet z ładowaczem json
ERROR in ./src/data/questions.json
Module parse failed: C:\Users\[...]\myApp\src\data\questions.json
Unexpected token (2:9)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected token (2:9)
...
Plik JSON jest ważny, a Używam programu json-loader dla pakietu internetowego, więc nie jestem pewien, na czym polega problem.
Oto moja webpack.config.json
file:
module.exports = {
entry: __dirname + '/src/index.js',
output: {
filename: 'bundle.js',
path: __dirname + '/dist/js'
},
cache: true,
debug: true,
devtool: 'source-map',
module: {
loaders: [{
test: /\.jsx?$/,
exclude: /(node_modules|\.c9)/,
loader: 'babel',
query: {
presets: ['react', 'es2015', 'stage-0']
}
}, {
test: /\.json$/,
loader: 'json-loader'
}]
}
};
To jak mam importując plik JSON:
const quizes = [
require('./data/questions.json')
];
Jeśli zmienić powyższy wiersz na:
const quizes = [
require('json!./data/questions.json')
];
Otrzymuję inny błąd:
ERROR in ./~/json-loader!./src/data/questions.json
Module build failed: SyntaxError: Unexpected token m
at Object.parse (native)
at Object.module.exports (C:\Users\[...]\myApp\node_modules\json-loader\index.js:7:48)
Tam, gdzie robi się jeszcze dziwniej, przy użyciu powyższej metody (prefiks json!
), błąd jest generowany natychmiast (podczas początkowej kompilacji). Jednakże, jeśli zostawiam go w ładowarkach konfiguracyjnych, początkowa kompilacja zakończy się bezbłędnie, ale kolejne kompilacje zgłoszą błąd.
Mimo to moja aplikacja nadal działa przez większość czasu. Co tu się dzieje?