admin管理员组

文章数量:1415111

npm v3.10.10 node v6.11.0 eslint v4.2.0

You can pull the repo here. Just npm install then npm run lint

I'm trying to use the following export statement (ment works, but is ugly):

containers/index.js

export MainContainer from './Main/MainContainer'
// export { default as MainContainer } from './Main/MainContainer'

config/routes.js

import React from 'react'
import { Route, HashRouter, browserHistory } from 'react-router-dom'
import { MainContainer } from '../containers'

const routes = (
  <HashRouter history={browserHistory}>
    <Route path="/" ponent={MainContainer} />
  </HashRouter>
)

export default routes

I installed the following package:

npm install babel-eslint@next --save-dev

.eslintrc

{
  parser: "babel-eslint",
  en: {
    es6: true,
    browser: true
  },
  extends: ["eslint:remended", "plugin:react/remended", "standard"],
  plugins: [
    "react"
  ]
}

.eslintrc.json

{
    "env": {
        "browser": true,
        "es6": true
    },
    "extends": "eslint:remended",
    "parserOptions": {
        "ecmaFeatures": {
            "experimentalObjectRestSpread": true,
            "jsx": true
        },
        "sourceType": "module"
    },
    "plugins": [
        "react"
    ],
    "rules": {
        "indent": [
            "error",
            2
        ],
        "linebreak-style": [
            "error",
            "unix"
        ],
        "quotes": [
            "error",
            "single"
        ],
        "semi": [
            "off",
            "always"
        ]
    }
}

However even with that installed I still get the error about the MainContainer when I npm run lint

package.json

"scripts": {
  "start": "webpack-dev-server",
  "production": "webpack -p",
  "lint": "eslint app/.; exit 0",
  "fix": "eslint --fix app/.; exit 0"
},

"devDependencies": {
  "babel-core": "^6.25.0",
  "babel-eslint": "^8.0.0-alpha.13",
  "babel-loader": "^7.1.1",
  "babel-plugin-transform-export-extensions": "^6.22.0",
  "babel-preset-es2015": "^6.24.1",
  "babel-preset-react": "^6.24.1",
  "babel-preset-stage-0": "^6.24.1",
  "css-loader": "^0.28.4",
  "eslint": "^4.2.0",
  "eslint-config-standard": "^10.2.1",
  "eslint-plugin-promise": "^3.5.0",
  "eslint-plugin-react": "^7.1.0",
  "eslint-plugin-standard": "^3.0.1",
  "html-webpack-plugin": "^2.29.0",
  "style-loader": "^0.18.2",
  "webpack": "^3.2.0",
  "webpack-dev-server": "^2.5.1"
}

folder structure

npm v3.10.10 node v6.11.0 eslint v4.2.0

You can pull the repo here. Just npm install then npm run lint

I'm trying to use the following export statement (ment works, but is ugly):

containers/index.js

export MainContainer from './Main/MainContainer'
// export { default as MainContainer } from './Main/MainContainer'

config/routes.js

import React from 'react'
import { Route, HashRouter, browserHistory } from 'react-router-dom'
import { MainContainer } from '../containers'

const routes = (
  <HashRouter history={browserHistory}>
    <Route path="/" ponent={MainContainer} />
  </HashRouter>
)

export default routes

I installed the following package:

npm install babel-eslint@next --save-dev

.eslintrc

{
  parser: "babel-eslint",
  en: {
    es6: true,
    browser: true
  },
  extends: ["eslint:remended", "plugin:react/remended", "standard"],
  plugins: [
    "react"
  ]
}

.eslintrc.json

{
    "env": {
        "browser": true,
        "es6": true
    },
    "extends": "eslint:remended",
    "parserOptions": {
        "ecmaFeatures": {
            "experimentalObjectRestSpread": true,
            "jsx": true
        },
        "sourceType": "module"
    },
    "plugins": [
        "react"
    ],
    "rules": {
        "indent": [
            "error",
            2
        ],
        "linebreak-style": [
            "error",
            "unix"
        ],
        "quotes": [
            "error",
            "single"
        ],
        "semi": [
            "off",
            "always"
        ]
    }
}

However even with that installed I still get the error about the MainContainer when I npm run lint

package.json

"scripts": {
  "start": "webpack-dev-server",
  "production": "webpack -p",
  "lint": "eslint app/.; exit 0",
  "fix": "eslint --fix app/.; exit 0"
},

"devDependencies": {
  "babel-core": "^6.25.0",
  "babel-eslint": "^8.0.0-alpha.13",
  "babel-loader": "^7.1.1",
  "babel-plugin-transform-export-extensions": "^6.22.0",
  "babel-preset-es2015": "^6.24.1",
  "babel-preset-react": "^6.24.1",
  "babel-preset-stage-0": "^6.24.1",
  "css-loader": "^0.28.4",
  "eslint": "^4.2.0",
  "eslint-config-standard": "^10.2.1",
  "eslint-plugin-promise": "^3.5.0",
  "eslint-plugin-react": "^7.1.0",
  "eslint-plugin-standard": "^3.0.1",
  "html-webpack-plugin": "^2.29.0",
  "style-loader": "^0.18.2",
  "webpack": "^3.2.0",
  "webpack-dev-server": "^2.5.1"
}

folder structure

Share Improve this question edited Jul 13, 2017 at 16:19 Leon Gaban asked Jul 13, 2017 at 15:48 Leon GabanLeon Gaban 39.1k122 gold badges349 silver badges550 bronze badges 9
  • @AlbertoTrindadeTavares just added them! – Leon Gaban Commented Jul 13, 2017 at 15:51
  • You need to do an import on your index.js file. import MainContainer from /your file path here/ – yoursweater Commented Jul 13, 2017 at 15:52
  • @yoursweater I have that line in my routes.js import { MainContainer } from '../containers' – Leon Gaban Commented Jul 13, 2017 at 15:54
  • 1 @LeonGaban I think that you need babel plugin stage-1 or just babel-plugin-transform-export-extensions - babeljs.io/docs/plugins/transform-export-extensions. Bear in mind that you should add this plugin to the .babelrc. This syntax is not yet official. – Dawid Karabin Commented Jul 13, 2017 at 15:57
  • You'll need a valid export statement. See developer.mozilla/en-US/docs/Web/JavaScript/Reference/…. – Dave Newton Commented Jul 13, 2017 at 15:58
 |  Show 4 more ments

1 Answer 1

Reset to default 5

Figured it out! I needed to edit my .eslintrc.json file, not the .eslintrc

https://github./babel/babel-eslint/issues/6

{
...
    "extends": [
        "eslint:remended",
        "plugin:react/remended"
    ],
...
}

本文标签: javascriptHow to remove eslint Parsing error on ES6 export statementStack Overflow