After looking at the documentation for the import/no-named-as-default eslint rule, I'm still confused about what exactly I'm doing wrong.
I have the following file structure
. ├── ButtonBack.css ├── ButtonBack.jsx ├── __tests__ │ └── ButtonBack.test.jsx └── index.js
The ButtonBack.jsx contains the following code
import React from 'react'; import PropTypes from 'prop-types'; export default class ButtonBack extends React.Component { ... code removed to keep example short ... }
__tests__/ButtonBack.test.jsx contains the following code
import React from 'react'; import { shallow } from 'enzyme'; import ButtonBack from '../ButtonBack'; // <== this line has an eslint warning ... code removed to keep example short ...
The problem is, my linter says that import ButtonBack from '../ButtonBack
violates the following lint rules:
I can't figure out why my import statement violates the lint rule. Removing the name of the class in ButtonBack.jsx (export default class extends React.Component
) does not solve the issue either.
Reports use of an exported name as a property on the default export. Rationale: Accessing a property that has a name that is shared by an exported name from the same module is likely to be a mistake.
This plugin intends to support linting of ES2015+ (ES6+) import/export syntax, and prevent issues with misspelling of file paths and import names. All the goodness that the ES2015+ static module syntax intends to provide, marked up in your editor.
Ran into this same issue and from what I'm seeing you're going to just have to disable that rule (that's what I did at least)
"Unfortunately, React + Redux is the most common scenario. However, there are lots of other cases where HOCs will force developers to shut down this rule."
https://github.com/benmosher/eslint-plugin-import/issues/544
https://github.com/reactjs/react-redux/issues/119
https://github.com/18F/calc/pull/1235
.eslintrc
"rules": { "import/no-named-as-default": 0 }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With