我能否通过eslint-loader忽略意外的保留字错误

时间:2015-12-22 22:05:00

标签: reactjs ecmascript-6 babeljs eslint

我正在使用最新的React,Babel,因此也是他们必要的预设 我的应用程序正常运行,不会吐出任何控制台错误 但是,我从String time_Date_str = sdf.format(cal.getTime()); 收到以下错误 我怎么能解决这个问题?

我的控制台

eslint-loader

webpack.config.js

blog git:(master) ✗ webpack -w -d
Hash: 96cef29fd40f9ab86ee5
Version: webpack 1.12.9
Time: 1305ms
        Asset     Size  Chunks             Chunk Names
    bundle.js  3.75 kB       0  [emitted]  main
bundle.js.map  2.07 kB       0  [emitted]  main
    + 1 hidden modules

ERROR in ./app/assets/frontend/app.jsx

/Users/seoyoochan/dev/blog/app/assets/frontend/app.jsx
  1:2  error  Parsing error: Unexpected reserved word

✖ 1 problem (1 error, 0 warnings)

app.jsx

module.exports = {
entry: "./app/assets/frontend/app.jsx",
output: {
    path: __dirname + "/app/assets/javascripts",
    filename: "bundle.js"
},
resolve: {
  extensions: ["", ".js", ".jsx"]
},
module: {
  preLoaders: [
    {
      test: /.jsx?$/,
      loader: "eslint-loader",
      exclude: /bundle\.js$/
    }
  ],
  loaders: [
    {
      test: /.jsx?$/,
      loader: "babel",
      exclude: /node_modules/,
      query: {
        cacheDirectory: true,
        presets: ["es2015", "react"]
      }
    }
  ]
}
};

2 个答案:

答案 0 :(得分:0)

您可能需要配置eslint才能理解jsx。使用以下内容创建.eslintrc文件:

{
  "ecmaFeatures": {
      "jsx": true
  }
}

有关将来可能会给您带来错误的完整配置列表,see the docs

答案 1 :(得分:-1)

我配置了eslint来理解jsx,所以这里是这个错误的逐步解决方案。

  1. 使用以下

    创建.elintrc文件

    {   “ecmaFeatures”:{       “jsx”:是的   } }

  2. 在webpack.config.js中添加以下内容

    module.exports = { ...   模块:{      preLoaders:[        {          测试:/。js?$ /,          装载机:“eslint-loader”,          exclude:/bundle.js$/        }      ]      装载机:[        {          测试:/。jsx?$ /,          装载机:“babel”,          exclude:/ node_modules /,          查询:{            cacheDirectory:true,            预设:[“es2015”,“反应”]          }        }      ]    },   eslint:{      configFile:'。/。eslintrc'   } }