给定包含时,Webpack jsx模块加载程序失败

时间:2018-01-31 20:30:36

标签: webpack babeljs jsx babel-loader

我将问题归结为最低限度的测试。我有一个App.js文件,其中包含一些jsx,并且要编译为./bundle.js

// App.js
module.exports = () => <div/>

我的webpack配置似乎非常标准

module.exports = {
    entry: './App.js',
    output: {
        filename: './bundle.js'
    },
    module: {
        loaders: [
            {
                test: /\.js$/,
                loader: 'babel-loader',
                //include: ['./includes'],  // <- Problem line
                query: {
                    plugins: [
                        ['transform-react-jsx']
                    ]
                }
            }
        ]
    }
}

仅当删除了带有include的行时,才能正常编译和编译。如果我启用该行,则会收到错误

Module parse failed: ./App.js Unexpected token (1:23)
You may need an appropriate loader to handle this file type.
| module.exports = () => <div/>

当我为加载器指定一个include时,我不知道它为什么会失败,即使include: []失败并出现同样的错误。

有没有人有想法?

1 个答案:

答案 0 :(得分:1)

include就像test一样。

  • include: []表示&#34;不包括任何内容&#34;`
  • include: ["./include"]表示&#34;仅包含include目录中的文件&#34;

所以,如果这些将排除./App.js