I try to import interfaces like this
import placeholder from '@/assets/images/placeholder-image.svg'
import { Button } from '@/components/atoms/buttons/Button'
but they get es-lint complain Like this.
and
Missing file extension for "@/components/atoms/buttons/Button"eslintimport/extensions Unable to resolve path to module '@/components/atoms/buttons/Button'.eslintimport/no-unresolved
My .babelrc
file is
"presets": ["@babel/react", "@babel/preset-typescript"],
"plugins": [
"@babel/plugin-transform-typescript",
"babel-plugin-typescript-to-proptypes",
"@babel/plugin-proposal-export-default-from",
["@babel/plugin-proposal-class-properties", { "loose": true }],
"@babel/plugin-proposal-object-rest-spread",
["@babel/plugin-proposal-private-methods", { "loose": true }],
["@babel/plugin-proposal-private-property-in-object", { "loose": true }],
[
"module-resolver",
{
// https://stackoverflow.com/a/57288642/2298548
"root": ["."],
"alias": {
"@/svg": "./src/svg",
"@/utils": "./src/utils",
"@/hooks": "./src/hooks",
"@/doc": "./src/doc",
"@/config": "./config",
"@/styles": "./src/styles",
"@/fonts": "./src/assets/fonts",
"@/components": "./src/components",
"@/SVGIcons": "./src/SVGIcons",
"@/base": "./src",
"@/assets": "./src/assets"
}
}
]
]
}
and my .eslintrc.js
is
settings: {
'import/resolver': {
node: {
extensions: ['.js', '.jsx', '.ts', '.tsx', '.svg'],
},
},
},
Does anyone have an idea for this why happen? In path alias how we have to find a solution for linter error without disable es-lint.