I am using Visual Studio Code (VSC) 0.10.11 on Windows and Mac. For the purpose of this question I have this small JavaScript snippet:
'use strict';
const os = require('os');
console.log(os.homedir());
I followed John Papa on Visual Studio Code (Blog entry and Pluralsight Visual Studio Code JavaScript Intellisense - for those who have an account) and therefore I would expect that VSC provides Intellisense and Quick fix options when typings are available.
In the snippet above VSC recognizes console
and log()
(I use hoover, but it is the same with Intellisense):
but not os
and homedir()
:
But all 4 typings are available in typings/main/ambient/node/index.d.ts
. I know that the difference is the require
in the case of os
, but in John Papa's video course VSC also provided IntelliSense for required modules. A difference is that John Papa used tsd
while I am using typings
.
So my questions are
The above links are outdated. In older versions of VS Code you needed to reference your typings like /// <reference path> for somelibrary.d.ts
.
With new version you need to initialize your project by creating jsconfig.json
at the root of your project and add the following inside:
{
"compilerOptions": {
"target": "ES6",
"module": "CommonJS"
},
"exclude": [
"node_modules"
]
}
Next install typing you need. You can use either tsd or typings. In your case you need to install tsd install node
or typings install node --ambient
. Make sure you have typings/tsd
installed. Restart project.
Please refer to docs:
Update:
Since version 1.7 there is no need to manually install typings, they should be downloaded automatically. Better JavaScript IntelliSense