我在Windows和Mac上使用Visual Studio代码(VSC)0.10.11。对于这个问题的目的,我有这个小JavaScript片段:Visual Studio代码智能感知不适用于Javascript
'use strict';
const os = require('os');
console.log(os.homedir());
我跟约翰爸爸在Visual Studio代码(Blog entry和Pluralsight Visual Studio Code JavaScript Intellisense - 为那些谁拥有一个帐户),因此我预计VSC提供智能感知和快速修复选项可用时。
在上述VSC的片段识别console
和log()
(I使用胡佛,但它是与智能感知相同):
但不os
和homedir()
:
但是所有4种类型都在typings/main/ambient/node/index.d.ts
中可用。我知道os
的区别是require
,但在John Papa的视频课程中,VSC还为所需模块提供了IntelliSense。不同的是,约翰帕帕使用tsd
而我使用typings
。
所以我的问题是
- 我如何可以使智能感知所有已知的分型?
- 我需要做什么,VSC为我提供快速修复(缺少类型的模块下的绿线)?
用适当的'jsconfig。json'智能感知工作。但是,当您在第一个链接中阅读文档时,即使没有“jsconfig.json”可用,它也应该是默认行为:*注意:如果您的工作空间中没有jsconfig.json,VS Code将默认排除node_modules文件夹和由out属性定义的文件夹。* + * IntelliSense会自动提供给项目文件夹中的CommonJS和AMD模块。*因此,我认为这只是一个错误,它不能在没有配置文件的情况下工作。无论如何,现在它的工作。感谢您的回答! – ChrLipp
https://code.visualstudio.com/updates/ 他们已经改变了这种行为为jsconfig.json。 >如果您的工作空间中没有jsconfig.json,则使用以下默认值: 排除列表包含node_modules文件夹和由out属性定义的文件夹。 请注意,如果您没有定义jsconfig.json来标记项目的根目录,则每个JavaScript文件都被Salsa视为一个岛。如果没有jsconfig.json文件,交叉文件和类型文件IntelliSense将不起作用。 –
我认为这是使用测试版软件的缺点,事情变化很快。 –