问题
VSCode intellisense is great, when I import a javascript function like
import func from './file';
vs code will give me a helpful dialog with its arguments from jsdoc. This is because I'm using a relative file path.
However, if I'm working with my current package, lets call it "public" as listed in my package.json, and try to reference a file using its absolute path, the intellisense doesn't pick up on the file.
// import the same file as above, but using absolute path
// public is the name of the current npm package
import func from 'public/subfolder/file';
intellisense no longer appears.
Is this a bug or a configuration issue?
回答1:
Step1
Create a jsconfig.json file to indicate a JavaScript project within vs code, just go to the bottom of vs code and click on green bulb icon.
It will ask you to create jsconfig.json. Create jsconfig.json file which will contain the following code.
//jsconfig.json
{
// See https://go.microsoft.com/fwlink/?LinkId=759670
// for the documentation about the jsconfig.json format
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"allowSyntheticDefaultImports": true
},
"exclude": [
"node_modules",
"bower_components",
"jspm_packages",
"tmp",
"temp"
]
}
Step2 Install typings globally for downloading TypeScript Definition files (typings) for node modules like express, mongoose, angular etc.
npm install typings --global
TypeScript definition files are written in TypeScript to provide a VS IntelliSense experience for the functions and it's parameters. Let's install typings for express as given below:
typings insall dt~express --global
Let's try the coding experience for express. You will see the great intelliSense for express.
来源:https://stackoverflow.com/questions/48709594/how-do-i-get-vscode-to-recognize-current-package-javascript-imports