[英]Is VSCode Intellisense unable to autocomplete absolute imports using webpack aliases?
我有一个 Gatsby 项目,我正在尝试消除复杂的相对导入。 为绝对导入设置别名效果很好,我正在使用gatsby-plugin-alias-imports
和eslint-plugin-import
以便这些别名路径在构建期间和 eslint 内解析而不会出现任何错误。
盖茨比-config.js:
...
{
resolve: 'gatsby-plugin-alias-imports',
options: {
alias: {
'@components': 'src/components',
},
extensions: ['.js', '.jsx', '.json'],
},
},
和 eslintrc.js:
...
settings: {
react: {
version: 'detect',
},
'import/resolver': {
alias: {
map: [
['@components', './src/components'],
],
extensions: ['.js', '.jsx', '.json'],
},
},
},
但是当我尝试输入新的导入时,VScode 不会自动完成这些路径。 我找到了这个并设置了一个 jsconfig,但没有任何区别: https://code.visualstudio.com/docs/languages/jsconfig#_using-webpack-aliases
jsconfig.json
"compilerOptions": {
"module": "commonjs",
"target": "es6",
"baseUrl": ".",
"paths": {
"@components/*": ["/src/components"],
}
},
我在 jsconfig 中的路径设置上尝试了几种不同的变体,我在其他问题上也看到了这些变体,但它们都没有任何区别。 我希望能够在我开始输入时获得一个自动完成弹出窗口,例如,
import Button from '@components/common/Button'
但我什么也没得到。 这是不可能的吗?
附言。 我在 jsconfig.json 中尝试过的更改:
"."
-> "./"
"@components"
、 "@components/"
、 "@components/*"
、 "*"
["src/components/"]
, ["src/components/*"]
, ["src/*"]
已解决:您不能在同一个 repo 中拥有 tsconfig 和 jsconfig。
我们不小心在非 ts 项目中有一个 tsconfig,这导致 VSCode 完全忽略了 jsconfig。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.