Sto usando Visual Studio Code (VSC) 0.10.11 su Windows e Mac. Ai fini di questa domanda che ho questo piccolo frammento di codice JavaScript:Codice di Visual Studio Intellisense non funziona per Javascript
'use strict';
const os = require('os');
console.log(os.homedir());
ho seguito John Papa sul codice Visual Studio (Blog entry e Pluralsight Visual Studio Code JavaScript Intellisense - per coloro che hanno un account) e quindi mi aspetterei che VSC fornisce Intellisense e Opzioni di correzione rapida quando sono disponibili le tipizzazioni.
del frammento precedente VSC riconosce console
e log()
(uso aspirapolvere, ma è lo stesso con Intellisense):
ma non os
e homedir()
:
Ma tutte e 4 le tipizzazioni sono disponibili in typings/main/ambient/node/index.d.ts
. So che la differenza è require
nel caso di os
, ma nel corso di video di Giovanni Papa VSC ha anche fornito IntelliSense per i moduli richiesti. Una differenza è che John Papa ha utilizzato tsd
mentre sto usando typings
.
Quindi le mie domande sono
- come posso abilitare IntelliSense per tutte le tipizzazioni noti?
- cosa devo fare che VSC mi offre la correzione rapida (linea verde sotto moduli con digitings mancanti)?
Con un appropriato 'jsconfig.json' IntelliSense sta funzionando. Tuttavia, quando leggi la documentazione al tuo primo collegamento, dovrebbe essere il comportamento predefinito, anche quando non è disponibile 'jsconfig.json ': * Nota: Se non hai un jsconfig.json nel tuo spazio di lavoro, il codice VS sarà predefinito escludere la cartella node_modules e la cartella definita dall'attributo out. * + * IntelliSense viene fornito automaticamente per i moduli CommonJS e AMD all'interno delle cartelle del progetto. * Quindi penso che sia solo un bug che non funzioni senza il file di configurazione. Comunque, ora funziona. Grazie per la tua risposta! – ChrLipp
https://code.visualstudio.com/updates/ Hanno modificato questo comportamento per jsconfig.json. > Se non si dispone di jsconfig.json nell'area di lavoro, vengono utilizzate le seguenti impostazioni predefinite: l'elenco di esclusione include la cartella node_modules e la cartella definita dall'attributo out. Tieni presente che se non hai definito jsconfig.json per contrassegnare la radice del tuo progetto, ogni file JavaScript viene considerato un'isola da Salsa. Senza un file jsconfig.json, il file incrociato e il file Typings IntelliSense non funzioneranno. –
Penso che questo sia uno svantaggio dell'uso del software beta, le cose cambiano rapidamente. –