【问题标题】:Module parse failed with webpack and react, even using babel-loader即使使用 babel-loader,模块解析也因 webpack 失败并做出反应
【发布时间】:2015-12-23 13:22:42
【问题描述】:

我正在尝试将 webpack 与 react 一起使用,但出现此错误:

./app/main.js 中的错误

Module parse failed: /Users/me/app/main.js Line 2: Unexpected token
You may need an appropriate loader to handle this file type.
| //npm
| import React               from 'react';

这是感兴趣的 webpack 配置部分:

test: /\.jsx?$/,
        include: path.join(__dirname, 'src'),
        loader: 'babel-loader',
        query: {
            presets: ['es2015', 'react']

还有 package.json:

"devDependencies": {
    "autoprefixer-loader": "^3.1.0",
    "babel-core": "^6.1.20",
    "babel-loader": "^6.1.0",
    "babel-preset-es2015": "^6.1.18",
    "babel-preset-react": "^6.1.18",
    "jest": "^0.1.40",
    "webpack": "^1.12.4",
    "webpack-dev-server": "^1.12.1",
    "css-loader": "^0.22.0",
    "style-loader": "^0.13.0"
  },
  "dependencies": {
    "babel-polyfill": "^6.1.19",
    "history": "^1.17.0",
    "react": "^0.14.2",
    "react-dom": "^0.14.2",
    "react-mdl": "^1.0.4",
    "react-router": "^1.0.2"
  }

【问题讨论】:

    标签: webpack


    【解决方案1】:

    查看错误信息中的路径

    模块解析失败:/Users/me/app/main.js 第 2 行:意外令牌

    该模块似乎不在src 文件夹中。但是,您明确指定只有 path.join(__dirname, 'src') 内的模块应该通过 babel 加载器。

    调整include,使其也包含main.js

    【讨论】:

      【解决方案2】:
      loaders: [{
              test: /\.jsx?$/,
              loader: 'babel',
              query: {
                  presets: ['es2015', 'react']
              }
          }]
      

      这是我的加载器配置。 配置中的一大区别是加载程序的命名。尝试使用“babel”而不是“babel-loader”。 下一个可能的错误可能是您的版本。更新 babel-loader(到 6.2.0)。

      【讨论】:

      • 无论你使用“babel”还是“babel-loader”都没有区别。
      • 查询道具从何而来?
      猜你喜欢
      • 1970-01-01
      • 2018-06-16
      • 2022-09-29
      • 2020-06-13
      • 2020-06-24
      • 1970-01-01
      • 2018-07-05
      • 2018-03-28
      相关资源
      最近更新 更多