6

Sto cercando di utilizzare Visual Studio Code per modificare i file in un progetto react starter kit. Il progetto React utilizza Babel per il trans-piling e quindi ha solo file .js invece dei file .ts. Vorrei che VS Code fornisse il giusto intellisenso per questi file ... incluse nuove parole chiave Javascript asincrone/attese.Codice Visual Studio ES7/JS Intellisense

Finora riesco a far funzionare correttamente intellisense solo se rinominare l'estensione dei file da .js a .ts, ma non voglio convertire l'intero progetto solo per soddisfare le mie scelte di strumenti personali.

C'è un modo per rendere VS Code trattare i file .js come se fossero file .ts ... semplicemente per il piacere di ES7 intellisense? Ho individuato un thread of discussion about this, ma non sono sicuro di quali opzioni siano disponibili oggi. Ho anche provato ad aggiungere un file tsconfig.json che assomiglia a questo:

{ 
    "compilerOptions": { 
    "target": "es6" //An "es7" option is not yet legal 
    }, 
    "filesGlob": [ 
    "./**/*.js", 
    "!./node_modules/**/*.js" 
    ] 
} 

ho sperato questo sarebbe ingannare tipografico nel riconoscere .js file, ma senza fortuna.

In definitiva mi piacerebbe avere l'intellisense ES7 in VS Code. Se c'è un modo completamente diverso per raggiungere questo obiettivo, sarebbe anche il benvenuto. Del resto, se esiste un'alternativa a VS Code che fornisce l'equivalente di intellisense per ES7 Javascript, mi interessa sapere anche questo.

+0

https://github.com/Microsoft/nodejstools/wiki/ES6-IntelliSense-Preview-in-NTVS -1.1 – epascarello

+0

@epascarello: fantastico! C'è un modo per attivare questo per 'Codice di Visual Studio'? O è solo un'opzione per 'Visual Studio'? Inoltre, nel contesto di 'Visual Studio', sembra che ho bisogno di creare un file' .njsproj' o '.jsproj' prima di poter iniziare ... –

risposta

0

Visual Studio Codice

  • VSCode non supporta filesGlob. È solo una cosa atom-ts al momento.
  • Per utilizzare .js file è necessario abilitare allowJs

Soluzione

tsconfig.json:

{ 
    "compilerOptions": { 
    "target": "ES6", 
    "allowJs": true, 
    }, 
    exclude: ["node_modules"] 
} 

Nota: ES6 bersaglio che dà tutte le ultime caratteristiche (compresi eventuali quelli ES7) http://json.schemastore.org/tsconfig