2017-08-25 1 views
1

Impossible de faire fonctionner intellisense pour les fichiers .ts.vscode intellisense node.js fonctionne pour les fichiers .js - pas les fichiers .ts

test.js

var http = require('http'); 
http.[intellisense available] 

test.ts

var http = require('http'); 
http.[no suggestions] 

ne semble pas être lu index.d.ts

Voici tsconfig.json:

{ 
    "compileOnSave": true, 
    "compilerOptions": { 
    "target": "es5", 
    "module": "commonjs", 
    "sourceMap": true, 
    "watch": true 
    } 
} 

Toute suggestion. Vraiment envie d'utiliser tapuscrit, mais besoin des conseils tout en apprenant le nœud. Préfère ne pas utiliser javascript.

Merci.

+0

assurez-vous que le compilateur TypeScript est installé par 'npm install -g typecript' – Amogh

+0

[This] (https://code.visualstudio.com/docs/languages/typescript#_tsconfigjson) pourrait aider – Amogh

Répondre

1

Le code JavaScript de JavaScript et le type Intellisense pour Node et les modules tiers sont alimentés par des fichiers de type (fichiers d.ts).

Dans le code JavaScript, nous automatically télécharger ces dactylogrammes car ils ne sont utilisés que pour le support d'outillage. Quand nous voyons require('http') dans un fichier js par exemple, nous allons installer automatiquement les typages de nœuds. C'est pourquoi obtenir les suggestions dans ce cas

Dans le code TypeScript, les fichiers de typage doivent être gérés manuellement car ils font partie du processus de compilation. Pour installer les types de nœuds par exemple, exécutez simplement npm install --save-dev @types/node. Voici plus d'informations sur @types: https://blogs.msdn.microsoft.com/typescript/2016/06/15/the-future-of-declaration-files/

Je vous soupçonne avez juste besoin d'installer le nœud typages pour obtenir IntelliSense approprié.

1

Courbe d'apprentissage.

Pour un fichier .js:

var http = require('http'); 

pour un fichier .ts:

import http = require('http'); 

Le transpiler va écrire: var http = ...

Le "importation" au lieu de "var" devient intellisense au travail. Un clic droit pour "aller à la définition" fonctionne.

Problème résolu.