gay*_*dev 8 import reactjs next.js eslintrc nestjs-config
我正在尝试按照nextjs 文档使用自定义别名导入文件。
我目前的做法是
从
import Header from '../../../components/Header';
Run Code Online (Sandbox Code Playgroud)
到
import Header from '@components/Header';
Run Code Online (Sandbox Code Playgroud)
我得到了预期的结果。但是 eslint 会抛出以下错误:
我尝试在 eslintrc 文件中添加以下行来解决该错误
settings: {
'import/resolver': {
node: {
paths: ['src'],
},
},
},
Run Code Online (Sandbox Code Playgroud)
但 eslint 仍然抛出同样的错误。
解决这个问题的正确方法是什么?
提前致谢...
注意:我不想删除 eslint 并且我需要 @components import 别名
最后,在深入研究了很多 GitHub 答案等之后……
在你的 eslintrc 文件中...添加以下别名
settings: {
'import/resolver': {
alias: {
map: [
['@components', '../../../components/'],
['@images', '../../../assets/images/'],
],
extensions: ['.js', '.jsx'],
},
},
},
Run Code Online (Sandbox Code Playgroud)
还要修复 flowconfig 文件中的流错误,添加 name_mapper
module.name_mapper='^@components' ->'<PROJECT_ROOT>/../../../components'
module.name_mapper='^@images' ->'<PROJECT_ROOT>/../../../assets/images'
Run Code Online (Sandbox Code Playgroud)
您还需要安装npm i -D eslint-import-resolver-typescript,然后将以下内容添加到 eslint 配置文件中:
"settings": {
"import/resolver": {
"typescript": {} // this loads <rootdir>/tsconfig.json to eslint
},
}
Run Code Online (Sandbox Code Playgroud)
参考: https: //gourav.io/blog/nextjs-cheatsheet
| 归档时间: |
|
| 查看次数: |
4713 次 |
| 最近记录: |