2016-11-30 5 views
0

Ich begann mit tsd und späteren Typings, die wir aus diesen Quellen installieren und Referenz in der Serverdatei bereitstellen müssen, aber jetzt können wir Deklarationsdateien mit @ types/filename bekommen Ich weiß nicht, warum wir von tsd und typings weg sind und jetzt sind wir bei @types.Wie man typisierte Dateien in Node/Express Projekt verwendet

Wie kann ich diese Deklarationsdateien in meinem mittleren Projekt verwenden, ich habe keine Ahnung, wie kann ich importieren oder was zu tun, um es funktionsfähig zu machen und Intelligenz und Typprüfung bekommen.

Ich habe 2 Ordner in meinem Projekt, Server und Client, der Client eckig und alle Frontend Zeug, und der Server-Ordner (über Knoten) hat package.json, server.ts, node_modules und tsconfig-Dateien, hier ist tsconfig Datei und server.ts: seine werfen Fehler kann nicht Modul @ Typen finden/express

{ 
"compilerOptions": { 
    "target": "ES5", 
    "module": "commonjs", 
    "typeRoots" : ["./node_modules/@types"], 
    "moduleResolution": "node" 
} 
} 

import * as express from "@types/express"; 
var app = express(); 

app.get('/', function (req, res) { 
res.send('Hello World!') 
}) 

app.listen(3000, function() { 
console.log('Example app listening on port 3000!') 
}) 

Dies ist package.json:

{ 
"name": "server", 
"version": "1.0.0", 
"description": "quiz application backend", 
"main": "index.js", 
"scripts": { 
"test": "echo \"Error: no test specified\" && exit 1" 
}, 
"author": "", 
"license": "ISC", 
"dependencies": { 
"@types/express": "^4.0.34", 
"express": "^4.14.0" 
} 
} 

Dank!

+0

welche Typoskript-Version? Bitte geben Sie einen Code ein: tsconfig, server.ts? – lenny

+0

Ich nicht in server.ts enthalten, da ich keine intellisense, einschließlich einschließlich tsconfig in wenigen Sekunden – blackHawk

+0

enthalten tsconfig – blackHawk

Antwort

0

Mit Typoskript 2 brauchen Sie nur die Typisierungen über npm zu installieren:

npm install @types/lodash --save 

und starten Sie es in Ihrem ts Datei:

import * as _ from "lodash"; 
_.padStart("Hello TypeScript!", 20, " "); 

Intellisense usw. funktionieren wird, keine Notwendigkeit für die alte /// <reference path="..." /> Syntax.

+0

Ich habe es für Express wie diese npm installiert @ types/express erstellt @ types Ordner in node_module und es hat Datei index.d.ts und abhängige Dateien getippt, jetzt beim Importieren wie dieser Import * als Ausdruck von "@ types/express"; var app = express(); Es gibt mir keine Intelligenz – blackHawk

+0

Sie können versuchen, dies zu Ihrem 'tsconfig.json' CompilerOptions hinzuzufügen: '" typeRoots ": [" ./node_modules/@types "]' – lenny

+0

Es gibt immer noch keine Intelligenz, die App-Variable ist jeder Typ – blackHawk

Verwandte Themen