我刚刚开始一项新工作,因此也进行了新的设置。并不是所有的区别,但是由于某种原因,我遇到了两个与导入路径显示内容有关的问题,并且单击文件/组件以打开文件无效。
可能是因为jsconfig
文件吗?:
{
"compilerOptions": {
"checkJs": false,
"target": "es2017",
"allowSyntheticDefaultImports": true,
"baseUrl": "./src",
"paths": {
"test-utils": ["../jest.config.js"]
}
},
"exclude": ["node_modules", "build"]
}
问题1
Provider
可以正确地从node_modules
导入,但是Checkbox
不能: import React from 'react';
import { Provider } from 'react-redux'; // YES
import { Checkbox } from '../../../node_modules/antd/lib/index'; // NO
export default function test() {
return (
<Provider>
<Checkbox />
</Provider>
);
}
因此,在VSCode中,我已经检查了我的设置JavaScript›首选项:导入模块说明符。当前设置为auto
。如果将其更改为relative
,则看不到任何更改。如果将其更改为non-relative
,则复选框导入将更改为:
[import { Checkbox } from '../node_modules/antd/lib/index';
,但这仍然不是我期望的node_module导入。
如果删除JSConfig,则导入{Checkbox}行为看起来正确。但是,我显然是团队中唯一遇到此问题的人。
问题2
Command key (⌘) + Click
单击组件以打开文件不会打开文件,有时会打开。 import StatusKey from '../../components/StatusKey'; // (⌘) + Click does not work
import { columns } from './tableColumns'; // (⌘) + Click works
GIF:http://recordit.co/GKZfRa7emo
但是,如果我将StatusKey导入更改为import StatusKey from 'components/StatusKey/index';
,那么它将起作用。
如果删除JSConfig,则单击状态键可与原始导入一起使用。
我很感谢见识