私たちのプロジェクトでは、すべてのコンポーネントが.js
ではなく.jsx
のファイル拡張子を持つようにリファクタリングしようとしています。マイwebpack.config.babelファイルは次のようになります。webpackは.jsxファイル拡張子を認識しません
import fs from "fs"
const babelrc = JSON.parse(fs.readFileSync("./.babelrc"))
export default {
module: {
loaders: [
{
test: /\.js$/,
loader: "babel-loader",
query: babelrc,
exclude: /(node_modules|bower_components)/,
},
{
test: /\.jsx$/,
loader: "babel-loader",
query: babelrc,
exclude: /(node_modules|bower_components)/,
},
{
test: /\.json$/,
loader: "json-loader",
},
{
test: /\.css$/,
loader: 'style-loader!css-loader',
},
],
},
}
をしかし、私は私のclient.jsファイルにimport Main from './components/Main/Main';
を実行しようとすると、それは私がバベルする新たなんだ
Module build failed: Error: ENOENT: no such file or directory, open '/foo/src/components/Main/Main.js'
@ multi babel-polyfill webpack-dev-server/client?/ webpack/hot/dev-server ./src/client.js
を示しており、 webpack。 jsxファイル拡張子を登録するには他にどのような場所が必要ですか?
私のコードは次のように見えるこの '' '{ テスト:/\.(js|jsx)$/、 ローダー: 'バベル-ローダー' は、 が含まれます:path.joinを(__ dirnameは、「/ ../src ') } '' ' –