mda*_*shs 8 visual-studio-code vscode-settings
我正在使用create-react-app工具创建一个react-app,因此它使用webpack进行模块捆绑.具有以下目录结构
-my-app
--node_modules
--src
---components
----somecomponent
-----SomeComponent.jsx
----someothercomponent
-----SomeOtherComponent.jsx
----main.js
----public
Run Code Online (Sandbox Code Playgroud)
为了避免很多../../(相对路径的点点斜线),我NODE_PATH=./src在package.json中设置了如下所示
"scripts": {
"start": "NODE_PATH=./src react-scripts start",
"build": "NODE_PATH=./src react-scripts build",
}
Run Code Online (Sandbox Code Playgroud)
所以我现在可以像这样导入我的模块
import SomeComponent from "/components/somecomponent/SomeComponent"
Run Code Online (Sandbox Code Playgroud)
因此,即使更改目录结构也不会经常破坏我的代码.但是有了这个,我的VSCode不会识别路径,因此不会显示智能感知,我该如何解决?
Mat*_*ner 17
我致力于VSCode的JS和TS支持.对于这个用例,我认为你有几个选择:
jsconfig.json在项目的根目录中创建一个并使用baseUrl:
{
"compilerOptions": {
"baseUrl": "./src"
}
}
Run Code Online (Sandbox Code Playgroud)
这应该允许进口,例如:
import SomeComponent from "components/somecomponent/SomeComponent"
Run Code Online (Sandbox Code Playgroud)
或者,使用paths属性:
{
"compilerOptions": {
"baseUrl": ".",
"paths": {
"~/*": ["./src/*"]
}
}
}
Run Code Online (Sandbox Code Playgroud)
这将允许导入表单:
import SomeComponent from "~/components/somecomponent/SomeComponent"
Run Code Online (Sandbox Code Playgroud)
您可以在此处找到有关这些配置选项的更多详细信